使用新的字符串数组填充android listview

时间:2012-10-09 06:10:05

标签: android android-listview

我只是用字符串数组填充ListView,然后在按钮的onClickListener()中,我想用新的String Array重新填充该列表视图。

我该怎么做?

4 个答案:

答案 0 :(得分:2)

您应该使用ListActivity而不是ListView。见例子

//列出活动类

  public class YourClass extends ListActivity 
    {
    public void onCreate(Bundle savedInstanceState)

    {

      super.onCreate(saveInstanceState);

       setContentView(R.layout.alertresult);

       showInList();


    }

    public void showInList()
    {

     ArrayAdapter adapter=new yourAdapter();

     setListAdapter(adapter);
    }


    }

// alertresult

的示例XML布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg"
    android:orientation="vertical" >


    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:fastScrollEnabled="true" >
    </ListView>

</LinearLayout>

您只需将ListView ID更改为@android:id / list和setListAdapter

即可

答案 1 :(得分:0)

您可以将新列表设置为列表视图(myListView)并调用myListView.invalidateViews();

答案 2 :(得分:0)

我假设你正在使用带有ArrayAdapter的ListView,而ArrayAdapter构造函数需要一个数组或arraylist作为参数:

public void ArrayAdapter(Context context, int resId, Object[] array);

使用此构造函数创建ArrayAdapter,当您想要更改数据时,只需更改引用数组的值,并调用notifyDatasetChanged()方法。

答案 3 :(得分:0)

使用adapter.clear()从适配器中删除数据,并将新数据填充到适配器并调用

adapter.notifyDataSetChanged()