我正在检查复选框的状态。我正在使用下面的代码。当应用程序启动时(未选中复选框),Toast消息显示“未选中”。但是当我打开另一个屏幕然后回去时,它就不再说了。怎么做? 部分代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
cb1 = (CheckBox) findViewById(R.id.CheckBox01);
if (cb1.isChecked())
{
Toast.makeText(main.this, "checked", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(main.this, "NOT checked", Toast.LENGTH_SHORT).show();
}
}
在这段代码中我也有一个
cb1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
//blablabla
}
});
我正在检查用户点击它时的复选框状态的部分。
我想在每次显示此屏幕时检查复选框的状态。
答案 0 :(得分:3)
使用onResume()
代替onCreate()
。
here您可以看到活动的生命周期图,onCreate()
仅在活动开始时被调用一次... onResume()
另一方面是每次调用活动回到了前面。
但是,OnCheckedChangeListener
内容应在onCreate()
或onStart()
中声明,因为它会持续存在。