LiseView GirdView點選改變背景圖片或者背景色
阿新 • • 發佈:2019-01-04
1、宣告變數
private MyGridView gird_girdview;
private int oldPosition = -1;//上一個位置初始化
2、得到控制元件
gird_girdview = (MyGridView)findViewById(R.id.gird_girdview);
3、定義兩個背景圖片
Resources resources = XiadanActivity.this.getResources(); btnDrawable1 = resources.getDrawable(R.mipmap.stylecheck); btnDrawable2 = resources.getDrawable(R.mipmap.stylecheckno);
4、新增介面卡
mGirdViewAdapter = new GirdViewAdapter(XiadanActivity.this, infoMapList);
gird_girdview.setAdapter(mGirdViewAdapter);
5、設定第一個item預設點選 gird_girdview.post(new Runnable() { @Override public void run() { gird_girdview.getChildAt(0).setBackgroundDrawable(btnDrawable1); gird_girdview.setItemChecked(0, true); priceId = infoMapList.get(0).get("PriceId"); } });
5、點選改變背景 gird_girdview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (oldPosition != -1) { parent.getChildAt(oldPosition).setBackgroundDrawable(btnDrawable2); } gird_girdview.getChildAt(0).setBackgroundDrawable(btnDrawable2); gird_girdview.setItemChecked(0, false); oldPosition = position; view.setBackgroundDrawable(btnDrawable1); TextView tv = (TextView) view.findViewById(R.id.tv_PriceId); priceId = tv.getText().toString(); } });