java - 禁用预先选中的复选框警报对话框 android java

标签 java android android-alertdialog disabled-input

ListView lv = ((AlertDialog) dialog).getListView();
SparseBooleanArray checkedItems = lv.getCheckedItemPositions();
if (checkedItems != null) {
  for (int i = 0; i < checkedItems.size(); i++) {
    //if (checkedItems.valueAt(i)) {
    if (checkedItems.get(i)) {
      lv.getChildAt(checkedItems.keyAt(i)).setEnabled(false);
      String item = lv.getAdapter().getItem(
        checkedItems.keyAt(i)).toString();
      Log.i("TAG", item);
    }
  }
}

我在 android 中加载警报对话框时获得了所有预先选中的复选框。现在,我想使用以下方法禁用预先选中的复选框:

lv.getChildAt(checkedItems.keyAt(i)).setEnabled(false);

但它不起作用,不知道如何禁用。

最佳答案

SparseBooleanArray checkedItems = lv.getCheckedItemPositions();

这意味着“已检查的项目”。您的代码仅访问每个复选框中的一个值。
访问 ListView 并操作该访问怎么样?
我认为你应该直接访问listview。

关于java - 禁用预先选中的复选框警报对话框 android java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40298222/

相关文章:

android - 在 Android 中使用 Facebook SDK 将带有标题的图片上传到 Facebook

Android 从 ListView 和存储中的文件夹中删除文件

java - Android JsonObject 错误 org.json.JSONException : No value

java - Oracle 和 Eclipse 的编译器生成的 java 字节码的差异

android - 如何将新的 map 或行添加到sharedpreferences文件

java - 如何使SurfaceView中的矩形对象可点击(setOnItemClickListener)

java - 从 Android 中的 AlertDialog 返回信息

java - Android获取文本EditText到AlertDialog

java - Quartz - 基于作业变量的关闭调度程序

java - Java 中的返回方法出现乱序