【发布时间】:2013-07-23 15:54:44
【问题描述】:
基本上,当我取消选中第一项上的框时,我希望第二项“灰显”且不可点击或禁用。
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if(position == 0) {
//disable.enable push
CheckBox checkBox = (CheckBox) mRoot.findViewById(R.id.cbRowCheckBox);
checkBox.setChecked(!checkBox.isChecked());
mPushEnabled = checkBox.isChecked();
if (mPushEnabled) {
//code for push enabled
//code to let position 1 enabled, i was thinking something along th e lines,
adapter.getposition(1).setEnabled(true);
} else {
//code for push disabled
adapter.getposition(1).setEnabled(false);
}
} else if(position == 1) {
//push notification settings
//open intent
}
}
我在想我可以获取项目所在的位置,然后将其设置为 false 为 setEnabled()。那是正确的方法吗?如果是这样,我不知道如何定位该项目。如果现在,最好的方法是什么?
【问题讨论】:
-
您应该使用 PreferenceActivity 和 android:dependency 属性。非本地偏好是一个非常非常非常非常非常糟糕的主意
-
我只想知道如何在按下位置 0 时禁用列表位置 1 ..... 我有所有其他逻辑。我把它拿出来,所以这将是一个很长的帖子
-
这正是 PreferenceActivity 和依赖项的用途。我只是想确定你不能使用它们,我仍然不相信
标签: android android-listview android-adapterview onitemclick