我有头等舱和二等舱。如何通过单击按钮更改 first.class 中的 ContentView(xml 文件),谁在 second.class 中?(也许我的问题很简单,但我找不到答案。)
问问题
944 次
2 回答
1
您可以使用一个简单的标志。从 Bundle 或磁盘读取您的第一个 Activity 中的标志(请参阅数据存储)。在第一个 Activity 的onCreate()
方法中使用如下内容:
// Read the flag, in this case from an Intent
int choice = 0;
Intent intent = getIntent();
if(intent != null)
choice = intent.getIntExtra(LAYOUT_PREFERENCE, 0);
// Load the appropriate layout
switch(choice) {
case 0:
setContentView(R.layout.one);
break;
case 1:
setContentView(R.layout.two);
break;
//etc
}
在第二个 Activity 中设置此标志,特别是在 Button 的 OnClickListener 中。我再次使用了一个简单的捆绑包,您可以通过它setResult()
甚至可以通过startActivity()
于 2013-01-14T17:26:29.567 回答
0
您必须将第一个 Activity(layout1 或 layout2)的设置存储在某处,两个 Activity 都可以访问该值,而您的第二个 Activity 也可以写入它。您可以使用 SharedPreferences、静态变量或Android 开发人员指南中提到的几乎所有内容。
如果您总是从第二个 Activity 开始第一个 Activity,您还可以将布局添加为调用意图的额外内容。
于 2013-01-14T17:27:53.387 回答