适配器simpleadapt下编写监听器,1.可以编写OnitemListenter 再把item内部获得焦点的控件焦点设置成FALSE 就可以实现对整个item的监听,同时不同的arg2代表不同的i
来源:互联网 发布:护士资格证题库软件 编辑:程序博客网 时间:2024/06/16 09:42
适配器simpleadapt下编写监听器,1.可以编写OnitemListenter 再把item内部获得焦点的控件焦点设置成FALSE 就可以实现对整个item的监听,同时不同的arg2代表不同的item。 //为网格视图设置图片适配器gvAdapter gv.setAdapter(new gvAdapter(this)); 每一张图片相当于一个item gv.setOnItemClickListener(new OnItemClickListener() {
2.如果想对item内部的控件设置监听器,可以通过继承baseadapt来修改getview 可以在GetView内部加控件的监听器,同时注意 position代表的是不同item下的监听器,要想实现position的用处,要把getView内的参数position写成final int position
例如:1.这里的item是一个图片,通过点不同的图片实现监听 这里有两种方法实现(因为这里一个item内部只有一个控件图片,所以图片可以看成一个item,也可以看成一个控件就有了下面这两种方法)
(1) GridView gv = (GridView)findViewById(R.id.gridView1);
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Toast.makeText(GridViewDemo.this, "你点击了第"+arg2+"张图片", Toast.LENGTH_SHORT).show();
}
});
(2)public View getView(final int position, View convertView, ViewGroup parent) {
ImageView iv;
if(convertView == null){
iv = new ImageView(context);
//为图片大小,长宽分别为80像素大小
iv.setLayoutParams(new GridView.LayoutParams(48,48));
//设置图片的显示模式,居中显示
iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
}else{
iv = (ImageView)convertView;
}
//设置图片资源
iv.setImageResource(res_img[position]);
iv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//注意position 被设置成了final 否则不能实现
Toast.makeText(context, "Hello World!"+position, Toast.LENGTH_SHORT).show();
}
});
return iv;
}
2.public View getView(int position, View convertView, ViewGroup parent) {
convertView = mInflater.inflate(layoutID, null);
for (int i = 0; i < flag.length; i++) {//备注1
if (convertView.findViewById(ItemIDs[i]) instanceof ImageView) {
ImageView iv = (ImageView) convertView.findViewById(ItemIDs[i]);
iv.setBackgroundResource((Integer) list.get(position).get(
flag[i]));
} else if (convertView.findViewById(ItemIDs[i]) instanceof TextView) {
TextView tv = (TextView) convertView.findViewById(ItemIDs[i]);
tv.setText((String) list.get(position).get(flag[i]));
}else{
//...备注2
}
}
addListener(convertView, position);
return convertView;
}
public void addListener(View convertView, final int position) {
((Button)convertView.findViewById(R.id.buttonView)).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(SimpleAdapterDemo.ma, "Hello World!"+position, Toast.LENGTH_LONG).show();
}
});
((TextView)convertView.findViewById(R.id.textView1)).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(SimpleAdapterDemo.ma, "Hello World!"+position, Toast.LENGTH_LONG).show();
}
});
}
0 0
- 适配器simpleadapt下编写监听器,1.可以编写OnitemListenter 再把item内部获得焦点的控件焦点设置成FALSE 就可以实现对整个item的监听,同时不同的arg2代表不同的i
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 肯定可以再TalkBack中设置 ListView焦点停在某个item上的方法
- ListView item项中包含某些可以抢焦点的控件导致无法获取焦点问题的解决方案
- 如何禁止listview的item项获得焦点,而让子控件获得焦点
- Item控件抢占焦点的解决方案
- item控件抢占焦点的问题
- 2个不同的图片效果,可以用焦点图
- 实现ListView不同的Item
- listView中Item不可点击的原因是内部有一些抢占焦点的控件
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- [Android开发] 解决listview 的item无法获得焦点
- GrivdView中Item无法获得焦点的问题
- 电子桌秤该如何维护
- Best practices for contained databases
- 电子地磅秤出现的故障和检测方法
- hdu 4442 Physical Examination(水题)
- Android系统权限和root权限
- 适配器simpleadapt下编写监听器,1.可以编写OnitemListenter 再把item内部获得焦点的控件焦点设置成FALSE 就可以实现对整个item的监听,同时不同的arg2代表不同的i
- 如何教你的医生来……使用开源
- Java网络编程之Socket通信
- java 物体运动过程中闪烁问题浅谈
- Elasticsearch 的坑爹事——记录一次mapping field修改过程
- XCode环境变量及路径设置
- 【COCOS2DX-游戏开发之八】点击空白隐藏键盘
- 物联网学习笔记大纲总结
- Unity3D研究院之手游开发中所有特殊的文件夹