0

値が変更されたかどうかを確認したいリストビューがあります.ListViewを作成するために使用している配列があります。

String [] list  = {"A1","A2","A3"};
String []listData;

これは、リストビュー項目の変更されたデータを取得する方法です

int count = listView.getAdapter().getCount();
    listData = new String[count];
    for (int i = 0; i < count; i++) {
        listData[i] = listView.getAdapter().getItem(i).toString();
    }

これは私がListViewを作成している方法です

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, android.R.id.text1, myList);
listView.setAdapter(adapter);

ボタンの OnClick で、配列 ( list と listdata ) の両方を比較したいのですが、値が変更されていない項目がある場合は、その項目でエラーを設定します。つまり、値が変更されていません。どうすればよいか教えてください。

4

1 に答える 1

0

このようなことができます。

このコードを削除してください:

int count = listView.getAdapter().getCount();
listData = new String[count];
for (int i = 0; i < count; i++) {
    listData[i] = listView.getAdapter().getItem(i).toString();
}


ボタンのクリック時に次のコードを追加します。

for(int i=0;i<listView.getAdapter().getCount();i++){
   if(list[i]==listView.getAdapter().getItem(i).toString()){
    View v=listView.getChaildAt(i);
    TextView tv=(TextView)v.findViewById(android.R.id.text1);
    tv.setError("Please change the data");
  }
}
listView.getAdapter().notifyDataSetChanged();
于 2013-08-19T10:18:28.250 に答える