2014-08-30 120 views
1

我试图创建一个简单的载入画面,我不需要任何进度条或任何东西只是一个形象。从一个活动传递一个对话框到另一个

我需要什么: -

- 启动活动活动B

一个

- 点击按钮-Clicking按钮也将启动只显示我的形象,而活动B被加载

对话

- 一旦活动装载了B我想保持显示,直到我的渲染器加载完所有纹理的对话框。

是否有可能从一个活动传递一个积极的对话到另一个?

//Activity A 
    StartButton.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View arg0) 
     { 
      Intent intent = new Intent(context, ActivityB.class);    
      Dialog loader_dialog = new Dialog(context,android.R.style.Theme_Black_NoTitleBar_Fullscreen); 
      loader_dialog.setContentView(R.layout.loading_screen); 
      loader_dialog.show(); 
      //this obviously doesnt work but is there something similar i can do? 
      //intent.putExtra("LoadingScreen", loader_dialog); 
      startActivity(intent); 
      finish(); 
     } 
    }); 

如果这是不可能的有没有其他方式可以得到预期的效果?

+0

没有你的下一个活动都有的setContentView(R.layout.somelayout); ? – Jamil 2014-08-30 22:21:09

+0

是它,但我只希望b活动内容查看可见一旦纹理加载 – Rob85 2014-08-30 22:23:54

回答

1

您可以创建对话框并让它出现在的onCreate(),或在onStart()你的下一个活动的方法 - B活动:

public class ActivityB extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     Dialog loader_dialog = new Dialog(context,android.R.style.Theme_Black_NoTitleBar_Fullscreen); 
     loader_dialog.setContentView(R.layout.loading_screen); 
     loader_dialog.show(); 

     ... 
    } 

}

我认为可以执行的任务你要。

+0

与问题是,我则有从点击活动按钮B在那里我得到一个白色的屏幕,然后我的形象出现5秒的时间段,如果我在两个活动中都有一个新的对话框,那么A中的一个闪烁一秒钟,然后白屏,然后第二个对话框工作正常 – Rob85 2014-08-30 22:41:46

1

如果你真的想过渡到第二活动期间所示的对话框,你可以使用一个单一的活动,而不是两个,并更改活动的布局使用第二个活动的布局,而不是调用另一个活动。但是,这可能会很复杂,因为您将两个活动的功能集成到一个功能中。


编辑:

您可以使用片段而不是活动。

相关问题