编辑位于另一个XML文件中的CheckBox和EditText

时间:2012-05-14 12:56:58

标签: android xml

所以我在活动家中有:

setContentView(R.layout.home);

现在,在Home活动中,可以转到设置活动,其中包含:

setContentView(R.layout.settings);

它有几个CheckBoxes和EditTexts。

是否可以在Home活动中编辑这些复选框的状态?

我已经在家中宣布他们是这样的:

CheckBox checkBox1 = (CheckBox) findViewById(R.id.checkBox1);

找到ID就好了,但应用程序在我尝试

的行上崩溃了
checkBox1.setChecked(true);

是否无法从其他活动访问它?

谢谢

2 个答案:

答案 0 :(得分:1)

通常,活动不能直接修改另一个活动的视图元素,因为Android不保证每个活动的生命周期。活动A可以调用活动B,但如果在显示B时内存不足,则可能会销毁A.

您需要使用意图将数据从一个活动传递到另一个活动。

答案 1 :(得分:1)

在活动之间传递数据

代表: Main.java

Intent i = new Intent(Home.this,Setting.class);
i.putExtra("check","true"); <-------- set valuse here
            ^^^^    ^^^^
startActivity(i);

并在 Setting.java

String str = getIntent().getExtras().getString("check");
                                                 ^^^^