0

ねえ、私はこのようなビューが欲しいという1つのことで立ち往生しています:

ここに画像の説明を入力

リストビューでは複数のアイテムを選択でき、どのアイテムを選択しても背景色を変更でき、そのアイテムをアレイリストに追加してさらに使用できる..

誰でもこれで私を助けてください??

編集:

このように使用しています:

     ArrayAdapter<String> part_list_adapter=new ArrayAdapter<String>(AssetSearch.this,  R.layout.part_list,R.id.label,part_array_list);

    PartNumber_List.setAdapter(part_list_adapter);


       PartNumber_List.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position,
            long id) {
        String item = (String)PartNumber_List.getItemAtPosition(position);

        Log.i("Item", item);
         v.setBackgroundColor(R.color.result_image_border);

    }
});

ここのログでは、クリックされたアイテムのみが表示されています..しかし、2つのアイテムの色が変わります...

4

2 に答える 2

1

このようにしてみてください..

  @Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);
    // Get the item that was clicked
   String item = (String) getListAdapter().getItem(position);
    boolean blnFound = yourarrayList.contains(item);
 if(blnFound=true){
     yourarraylist.remove(item);
       v.setBackgroundColor(R.color.somecolourtoindicate notselected);

    }
   else{
          yourarraylist.add(item);
          v.setBackgroundColor(R.color.somecolourtoindicate itemselected);
    }
    yourarraylist.add((String) getListAdapter().getItem(position);)
}
于 2012-04-10T09:38:10.010 に答える
1

リスト ビュー セルの View v の Background を設定しようとしていますが、実際にはリスト ビュー アダプターは、ビューをスクロールするときにセル ビューを再利用します。これは、色が他の行のセルに反映されるためです。

1 つの画像ビューをビュー ホルダーに追加し、ビュー ホルダーで画像ビューの背景を変更する必要がある唯一のオプションです。アダプター ビューの色は変更しないでください。

于 2012-04-10T13:48:05.867 に答える