java - 在 Android 中选择项目后如何关闭弹出 ListView

标签 java android sqlite listview

在单击某个项目后尝试关闭 ListView 。 listview 会弹出一个项目列表,在我点击一个项目后,它会停留在那里。是否有类似 dialog.dismiss()listviews 的东西?

     final ListView lvUser = new ListView(this);
    userList = tmDB.getAllUsers();
    final AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle(R.string.selectUser);
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(MainActivity.this, android.R.layout.simple_list_item_1, userList);
    lvUser.setAdapter(arrayAdapter);
    builder.setView(lvUser);

    //when user selects item
    lvUser.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            String name = userList.get(position);
            int userID;
            userID = tmDB.getUserId(name);
            txtName.setText(name);
// close the list view after selecting an item
        }
    });

最佳答案

你必须使用like

 public AlertDialog alertDialog;

        final AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle(R.string.selectUser);
        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(Main3Activity.this, android.R.layout.simple_list_item_1, userList);
        lvUser.setAdapter(arrayAdapter);
        builder.setView(lvUser);

        //when user selects item
        lvUser.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String name = userList.get(position);
                int userID;
                userID = tmDB.getUserId(name);
                txtName.setText(name);
// close the list view after selecting an item
                alertDialog.dismiss();

            }
        });

        alertDialog = builder.create();
        alertDialog.show();

关于java - 在 Android 中选择项目后如何关闭弹出 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47545402/

相关文章:

android - 改造 - android.os.NetworkOnMainThreadException 与 RxKotlin

sqlite - 德尔福和SQLite : Get the records count per month for the last 12 months

java - 嵌入式数据库、Java Web 项目

java异常链问题

android - 使用另一个没有 google play 的 apk 更新已安装的 android apk

Android studio 3.4.2 到 3.5 升级和 3.5 单独安装(没有升级)在启动时总是在 Windows 10 上崩溃

c# - 在 gridview (C#) 中获取 SQLite 数据不起作用

android - 在单个 ANDROID 数据库名称中创建多个表时出错

java - java中如何在每次更新后存储更新的数组?

java - json官方java api : JSONArray of JSONObjects