愁了好久的问题,搜索换了个关键词,发现了这篇及时雨的文章http://blog.youkuaiyun.com/by317966834/article/details/8834529。跟大家分享
1首先在你的adapter里面添加
- private int clickTemp = -1;
- //标识选择的Item
- public void setSeclection(int position) {
- clickTemp = position;
- }
2在getView里面这样
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- .....省略代码
- // 点击改变选中listItem的背景色
- if (clickTemp == position) {
- layout.setBackgroundResource(R.drawable.check_in_gdv_bg_s);
- } else {
- layout.setBackgroundColor(Color.TRANSPARENT);
- }}
- .....省略代码
- }
- //GridView监听事件
- designOrderGridView.setOnItemClickListener(new OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
- long arg3) {
- //arg1是当前item的view,通过它可以获得该项中的各个组件。
- //arg2是当前item的ID。这个id根据你在适配器中的写法可以自己定义。
- //arg3是当前的item在listView中的相对位置!
- .....省略代码
- //设置适配器
- mydapter.setSeclection(arg2);
- mydapter.notifyDataSetChanged();
- .....省略代码
- }
- });
- private int clickTemp = -1;
- //标识选择的Item
- public void setSeclection(int position) {
- clickTemp = position;
- }
本文介绍了一种实现GridView点击切换背景的方法。具体步骤包括:在Adapter中添加标识变量、设置选择状态的方法;在getView方法中根据标识变量改变背景色;最后,在GridView的点击事件中更新标识变量并通知Adapter刷新。
873

被折叠的 条评论
为什么被折叠?



