Android 的Listview上列表的每一行上有一按钮控件,如何写其事件,(并在得到相对应行上Textview值)?
这个Listview中SimpleAdapteradapter=newSimpleAdapter(RunCall.this,list,R.layout.viewstatu...
这个Listview中
SimpleAdapter adapter=new SimpleAdapter(RunCall.this,list
,R.layout.viewstatus,new String[]{"name"},
new int[]{R.id.name});
listview.setAdapter(adapter);
其中,列表的每行布局是R.layout.viewstatus,有一个Textview 和一个Button,这里面Textview是从list(arraylist数组)中迭带的值,我想写这个Buton事件,但要先得到此列的Textview值,才能操作
请问如何在自定义的适配中给这个按钮,做监听,能监听到列表中相对的这个TEXTVIEW值
public void addListener(View convertView) {
((Button)convertView.findViewById(R.id.buttonview2)).setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
//想得到此按钮所对应的列表上和TEXTVIEW值。
new AlertDialog.Builder(RunCall.ma)
.setTitle("自定义通用SimpleAdapter")
.setMessage("按钮成功触发监听事件!"+tv.getText().toString())
.show();
}}); 展开
SimpleAdapter adapter=new SimpleAdapter(RunCall.this,list
,R.layout.viewstatus,new String[]{"name"},
new int[]{R.id.name});
listview.setAdapter(adapter);
其中,列表的每行布局是R.layout.viewstatus,有一个Textview 和一个Button,这里面Textview是从list(arraylist数组)中迭带的值,我想写这个Buton事件,但要先得到此列的Textview值,才能操作
请问如何在自定义的适配中给这个按钮,做监听,能监听到列表中相对的这个TEXTVIEW值
public void addListener(View convertView) {
((Button)convertView.findViewById(R.id.buttonview2)).setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
//想得到此按钮所对应的列表上和TEXTVIEW值。
new AlertDialog.Builder(RunCall.ma)
.setTitle("自定义通用SimpleAdapter")
.setMessage("按钮成功触发监听事件!"+tv.getText().toString())
.show();
}}); 展开
5个回答
展开全部
这个嘛,我做过的哦~
List<Map<String, Object> data;
假定用于显示到TextView的数据的key是"title"
getView(int position, View convertView, ViewGroup parent) {
……
((Button)convertView.findViewById(R.id.buttonview2)).setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
new AlertDialog.Builder(RunCall.ma)
.setTitle("MyAdapter")
.setMessage(data.get(position).get("title") )
.show();
}});
……
就是这样了,还有不懂得问我
List<Map<String, Object> data;
假定用于显示到TextView的数据的key是"title"
getView(int position, View convertView, ViewGroup parent) {
……
((Button)convertView.findViewById(R.id.buttonview2)).setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
new AlertDialog.Builder(RunCall.ma)
.setTitle("MyAdapter")
.setMessage(data.get(position).get("title") )
.show();
}});
……
就是这样了,还有不懂得问我
追问
你能把你getView(int position, View convertView, ViewGroup parent) {}代码让我看看不,我还是得不到对应值,所有都只能是最后一个textview值
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
跟普通的按钮一样使用,定义,activity中调用资源显示,添加监听器,
主要区别就是这个按钮要添加一个图片资源。这个可以在xml文件中解决
android:src=“@drawable/fdafsafdsaf”
主要区别就是这个按钮要添加一个图片资源。这个可以在xml文件中解决
android:src=“@drawable/fdafsafdsaf”
追问
添加一个图片资源?不是IMAGEBUTTON也要这个嘛?我没有添加,就是一普通按钮呀!还有我是在自定义适配器中监听的,但是不知道如何监听到此行列表的TEXTVIEW值?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
老哥解决了吗,可不可以弄一个假的按钮,实际操作还是行点击事件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
学习
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SimpleAdapter 能做这样的操作吗?我记得都是在自定义适配器里写的.系统的布局没有这么强大吧
更多追问追答
追问
SimpleAdapter 没有问题呀!我可以显示的
追答
但是怎么获得控件,我没试过用SimpleAdapter 操作,你试试getItemId()或者getItemPostion()能获取到吗.奇怪,我印象里SimpleAdapter 里的button是无事件的,你点击button是点到button还是点到了listView?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询