0

AndroidでListViewを補充する方法

    listview = (ListView) findViewById(R.id.listView1);
    listview.setAdapter(new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, Names));

    final String[] TempArray = new String[Names.length];

    editText = (EditText) findViewById(R.id.editText1);
    editText.addTextChangedListener(new TextWatcher()
    {

        public void onTextChanged(CharSequence s, int start, int before,
                int count)
        {
            // TODO Auto-generated method 
        }

        public void beforeTextChanged(CharSequence s, int start, int count,
                int after)
        {
            // TODO Auto-generated method stub
        }

        public void afterTextChanged(Editable s)
        {
            // TODO Auto-generated method stub

        }
    });

それが私のサンプルコードでした。public void onTextChanged(CharSequence s, int start, int int count) function.onTextChanged 関数でリストビューをリフィルしたいのですが、リストビューを新しい文字列配列で埋めたいです。これどうやってするの???

4

5 に答える 5

0

notifyDataSetChanged();必要なのは、メソッドにメソッドを入れるだけですonTextChanged

お気に入り :

editText.addTextChangedListener(new TextWatcher()
{
    public void onTextChanged(CharSequence s, int start, int before, int count)
    {
        // TODO Auto-generated method 
        notifyDataSetChanged();
    }

    public void beforeTextChanged(CharSequence s, int start, int count, int after)
    {
        // TODO Auto-generated method stub
    }

    public void afterTextChanged(Editable s)
    {
        // TODO Auto-generated method stub
    }
});

この助けを願っています..お楽しみください..

于 2012-10-04T09:01:59.917 に答える
0

アダプターに「名前」の値を入力しているようです。できることは、 onTextChanged で「名前」から古いデータをクリアし、新しいデータを追加してアダプターを設定することです。

于 2012-10-04T08:41:49.707 に答える
0

まず、アダプターを変数に入れる必要があります。

ArrayAdapter mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Names);
listview.setAdapter(mAdapter);

次に、リストを補充する必要がある場合(たとえば、「名前」が変更された場合)、電話するだけです

mAdapter.notifyDataSetChanged();
于 2012-10-04T08:42:28.710 に答える