【问题标题】:Programatically replace String Array in a ListView Array Adapter以编程方式替换 ListView Arrayadapter 中的字符串数组
【发布时间】:2015-09-14 01:19:02
【问题描述】:

我有一个使用数组适配器填充的 ListView:{"1","2","3"}

   (ListView) ListOptions = (ListView)findViewById(R.id.ListOptions);
    String[] exampleString = new String[]{"1","2","3"};
    ListAdapter adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,exampleString);
    ListOptions.setAdapter(adapter);

稍后,我希望能够将exampleString 更改为exampleString2

{"4","5","6"}

并让 ListView 更新,exampleString2 显示为列表选项。

有没有我可以做的事情:

adapter.ChangeStringArray(exampleString2);
ListView.setAdapter(adapter);

我想避免每次更改填充列表项的字符串数组时都必须创建一个新适配器。

【问题讨论】:

    标签: android arrays listview android-listview


    【解决方案1】:

    ArrayAdapter 具有管理后备数据数组的方法。

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, new ArrayList<String>());
    adapter.addAll(exampleString);
    

    adapter.clear();
    adapter.addAll(exampleString2);
    adapter.notifyDataSetChanged();
    

    【讨论】:

    • 我猜你只需要创建自己的ArrayList
    猜你喜欢
    • 2012-04-26
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    相关资源
    最近更新 更多