0

我有2个首选项页面。根据首选项页面上显示的复选框“one”,我想显示CheckBoxPreference或不显示在页面“two”上。我知道我应该添加页面的活动“two”来处理页面“one”中的复选框是否被选中。但我不知道如何引用该复选框。Android如何筛选显示哪些首选项

回答

0

通过以编程方式获取对该复选框的引用,将其状态保存为首选项,将其传递给意向(通过intent.putExtras();)或将其保存在SharedPreferences中,然后在第二个活动中检查CheckBoxPreference.isChecked( )然后有条件地加载首选项。有关更多信息,请查询here

+0

你能提供一个关于如何做到这一点的例子吗?我的问题是,我不知道如何引用xml中的CheckBoxPreference。 – Panos 2015-03-02 11:54:08

+0

您引用CheckBoxPreference的方式与您在XML中定义的任何其他对象的引用方式相同,例如:CheckBoxPreference checkBox =(CheckBoxPreference)findViewById(R.id.yourCheckBox)。 – 2015-03-02 12:06:36

0

您可以使用名为StaticValues的类并添加一个变量,它是布尔值。

public static boolean isCheckBoxChecked; 

当复选框被选中设置此变量真:

StaticValues.isCheckBoxChecked = true; 

当你显示首选项页面2,您可以检查这个变量和deside如果您diplay下一个复选框与否。