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

最是人间留不住,朱颜辞镜花辞树。这篇文章主要讲述Android AlertDialog 动态更新里面的ListView数据相关的知识,希望能为你提供帮助。

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

文章图片

1:和ListView的数据跟新是基本一样的。
2:Activity代码示例
 
public class MainActivity extends AppCompatActivity {AlertDialog alertDialog; View view; List< String> data = https://www.songbingjia.com/android/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(); }}

 

【Android AlertDialog 动态更新里面的ListView数据】 
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>


 

    推荐阅读