我有一个活动Select_episode
。这将创建一个CustomListViewAdapter
的适配器,其中包含一个切换按钮。
在CustomListViewAdapter
中,我可以检查getView()
方法中切换按钮的状态。
final ToggleButton tgb1 = (ToggleButton) vi.findViewById(R.id.toggleButton1);
tgb1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(tgb1.isChecked()){
//do something
}else{
//do something
}
}
});
现在,而不是在CustomListViewAdapter
上使用这个setOnClickListener
,我想使用它或从活动检查这个切换按钮的状态。在本例中,活动为Select_episode
如何做到这一点?
Select_episode
的完整代码:http://pastebin.com/R1mSRrqjCustomListViewAdapter
完整代码:http://pastebin.com/U8Zqw924
在Activity中实现监听器可能不是一个好主意。我建议你在CustomListViewAdapter
类的getView()
方法中实现这些。
然后在onClick
方法中,您可以将ToggleButton
的值保存到SharedPreferences
(使用特殊键,将从指定的ListView
位置识别ToggleButton
)或者尝试编写一个方法,将List
与所有ToggleButtons
的值传递给Activity
。
在您的CustomListViewAdapter
类中创建一个方法
public getCheckState(int position)
{
return items.get(position).epStatus;
}
,并在Select_episode
中调用此方法来获取检查状态