• Android AlertDialog 动态更新里面的ListView数据


    1:和ListView的数据跟新是基本一样的。

    2:Activity代码示例

    public class MainActivity extends AppCompatActivity {
    
        AlertDialog alertDialog;
        View view;
        List<String> data = new ArrayList<>();
        ListView listView;
        ArrayAdapter<String> adapter;
    
        Handler handler=new Handler(){
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
                adapter.notifyDataSetChanged();
            }
        };
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            for (int i = 0; i < 100; i++) {
                data.add("数据:" + i);
            }
    
            view = getLayoutInflater().inflate(R.layout.controller_volume, null);
            alertDialog = new AlertDialog.Builder(this).setTitle("Dialog ListView更新")
                    .setIcon(R.mipmap.ic_launcher)
                    .setView(view)
                    .setPositiveButton("return", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface paramAnonymousDialogInterface, 
                                            int paramAnonymousInt) {
    
                        }
                    }).create();
            listView=view.findViewById(R.id.listView);
            adapter=new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,data);
            listView.setAdapter(adapter);
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    data.remove(data.get(position));
                    handler.sendEmptyMessageDelayed(100,1000);
                }
            });
    
            alertDialog.show();
        }
    
    
    
    }
    

      

    3:controller_volume.xml 只有一个listView

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
        android:layout_height="match_parent">
        <ListView
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:id="@+id/listView"/>
    </android.support.constraint.ConstraintLayout>
    

      

  • 相关阅读:
    C#代码中函数调用相关问题
    C#语言编写代码时常用的三大循环
    c#语言中的类型转换
    tesseract_vs2015工具包使用
    Halcon除法
    halcon批量读取图片
    halcon分离路径名称
    Halcon旋转图片的研究
    关于Haclon使用GPU加速的代码实例
    OpenCV代码:画出轮廓的外接矩形,和中心点
  • 原文地址:https://www.cnblogs.com/galibujianbusana/p/8259150.html
Copyright © 2020-2023  润新知