Viewは使いまわしているようなので、配列オブジェクトにtapSelectを追加し状態を保存し、
ListAdapterで状態をみて背景を表示するようにしました。
java
1@Override
2protected void onCreate(Bundle savedInstanceState) {
3 testListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
4 public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
5 view.setBackgroundColor(getResources().getColor(R.color.colorDarkGray));
6 // ListViewを表示している配列オブジェクトにtapSelectを追加し状態を保存
7 testlistDataArr.get(pos).tapSelect = true
8 }
9 });
10}
11
12
13public class testListAdapter extends ArrayAdapter<testlistData> {
14 private LayoutInflater layoutInflater;
15 public remoSigListAdapter(省略) {
16 省略
17 }
18 @Override
19 public View getView(int position, View convertView, ViewGroup parent) {
20 if (convertView == null) {
21 convertView = layoutInflater.inflate(
22 R.layout.design_remosiglistrow,
23 parent,
24 false
25 );
26 }
27 省略
28 testlistData testSig = (testlistData) getItem(position);
29 if (testSig.tapSelect) {
30 convertView.setBackgroundColor(getResources().getColor(R.color.colorDarkGray));
31 } else {
32 convertView.setBackgroundColor(getResources().getColor(R.color.colorTranceParent));
33 }
34 return convertView;
35 }
36}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。