当前位置:操作系统 > 安卓/Android >>

android Gridview 点击某个item 改变item的背景

[java]
private int clickTemp = -1; 
           //标识选择的Item  
public void setSeclection(int position) { 
clickTemp = position; 

private int clickTemp = -1;
           //标识选择的Item
public void setSeclection(int position) {
clickTemp = position;
}


2 然后再getview里面这样
[java]
?@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); 
}} 
.....省略代码 

@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);
}}
.....省略代码
}

3 最后在gridview的单击item事件  这样做

[java]
//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(); 
                     .....省略代码 

}); 

//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();
                     .....省略代码
}
});


 

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,