java - Listview为单个项目设置颜色按位置当对话框打开时

标签 java android android-listview

我尝试通过以下代码在打开对话框时设置选中:

 private void openDilog() {
    final Dialog dialog = new Dialog(getActivity(), R.style.NewDialog);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.mylayout);
    dialog.setCancelable(false);
    mListView =dialog.findViewById(R.id.mylist);
    listItem = getResources().getStringArray(R.array.myarray);
    aAdapter = new ArrayAdapter(getActivity(), 
    android.R.layout.simple_list_item_1,android.R.id.text1, listItem);
    mListView.setAdapter(aAdapter);
    dialog.show();
    mListView.setItemChecked(1,true);
  }

我的 xml 布局 mylayout:

   <LinearLayout
      ......>
        <ListView
        android:id="@+id/mylist"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:choiceMode="singleChoice"
        android:listSelector="#ffffff"
        />
</LinearLayout>

我尝试将支票放在位置 1,但没有成功

我想更改背景颜色或强制选择项目

请注意,该对话框位于框架内

最佳答案

我相信您想要的是创建一个 AlertDialog 并在该对话框上使用 setSingleChoiceItems 方法:

private void openDialog() {
    Context context = getActivity();
    if (context == null) return;
    AlertDialog.Builder adb = new AlertDialog.Builder(context);
    adb.setSingleChoiceItems(R.array.myarray, 1, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

        }
    });
    adb.show();
}

注意:这将自动选择位置 1 处的项目(列表中的第二项基于从索引 0 开始的位置)

关于java - Listview为单个项目设置颜色按位置当对话框打开时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58806004/

相关文章:

android - 将项目加载到 ListView 后如何突出显示android listview的第一个项目?

java - 为 ListView Android 设置 View 属性

java - Android 应用程序错误(Activity Main)

java - 如何使用一个模型和多个 View 编写 Java SWT 应用程序?

android - 当我加载 ADT 时为什么会收到错误 "The Android SDK requires Android Developer Toolkit version XX.X.X or above?"

java - 安卓工作室 : "Could not get unknown property ' VERSION_NAME' for project of type org. gradle.api.Project"

android - 具有多个用于平板电脑的项目列的 ListView ?

Java 8 表达式求值顺序

java - Hibernate:集合条件

android - adb 服务器运行时 Syslog 泛滥