android – 如何在单击项目时检查ListView的CheckBox?

android – 如何在单击项目时检查ListView的CheckBox?,第1张

概述单击项目时如何检查ListView的CheckBox? 我有一个带CheckBox,TextView,Button的ListView. 在这里,我想选择多行ListView,以便使用CheckBox.如果我单击一行,我想要检查其相应的CheckBox并获取ListView的单击项的RowID. 如果我点击按钮,我想打开一个d出窗口或另一个屏幕(活动),但不能检查CheckBox. 这该怎么做?请帮 单击项目时如何检查ListVIEw的CheckBox?

我有一个带CheckBox,TextVIEw,button的ListVIEw.

在这里,我想选择多行ListVIEw,以便使用CheckBox.如果我单击一行,我想要检查其相应的CheckBox并获取ListVIEw的单击项的RowID.

如果我点击按钮,我想打开一个d出窗口或另一个屏幕(活动),但不能检查CheckBox.

这该怎么做?请帮忙.

提前致谢.

编辑:

这就是我的布局.

使用Adapter到ListVIEw的代码很简单.

public class Adapter extends BaseAdapter{    private Context context;    button btnVIEw;    CheckBox Box;           ArrayList<String> altextVIEw1;    ArrayList<String> altextVIEw2;    public Adapter(Context c,button vIEw,CheckBox checkBox,ArrayList<String> textVIEw1,ArrayList<String> textVIEw2) {        this.context=c;        this.btnVIEw=vIEw;        this.Box=checkBox;        this.altextVIEw1=textVIEw1;        this.altextVIEw2=textVIEw2;    }    @OverrIDe    public int getCount() {        // Todo auto-generated method stub        return altextVIEw1.size();    }    @OverrIDe    public Object getItem(int arg0) {        // Todo auto-generated method stub        return null;    }    @OverrIDe    public long getItemID(int arg0) {        // Todo auto-generated method stub        return 0;    }    @OverrIDe    public VIEw getVIEw(int arg0,VIEw arg1,VIEwGroup arg2) {        // Todo auto-generated method stub        VIEw vIEw=arg1;        vIEw=LayoutInflater.from(context).inflate(R.layout.List7,null);        TextVIEw tv1=(TextVIEw)vIEw.findVIEwByID(R.ID.tV1);        TextVIEw tv2=(TextVIEw)vIEw.findVIEwByID(R.ID.tV2);        btnVIEw=(button)findVIEwByID(R.ID.btnVIEw);        Box=(CheckBox)findVIEwByID(R.ID.cB);        tv1.setText(altextVIEw1.get(arg0));        tv2.setText(altextVIEw2.get(arg0));        return vIEw;    }}
解决方法 >将checkBox对象设置为行视图的标记,可能是适配器的getVIEw()方法中的’convertVIEw’.
>在行视图上写入单击侦听器.
>在单击侦听器内部,从onClick方法的视图中查看getTag,并将其强制转换为复选框,然后将setChecked设置为true.

代码可能看起来像这样,

convertVIEw.setTag(yourCheckBoxObject);        convertVIEw.setonClickListener(new OnClickListener() {            @OverrIDe            public voID onClick(VIEw v) {                CheckBox cb = (CheckBox) v.getTag();                cb.setChecked(true);            }        });

你需要按照这个线程来学习它..只需阅读整个线程并尝试理解然后实现..这是你能得到的最好的帮助. Getting an issue while checking the dynamically generated checkbox through list view

总结

以上是内存溢出为你收集整理的android – 如何在单击项目时检查ListView的CheckBox?全部内容,希望文章能够帮你解决android – 如何在单击项目时检查ListView的CheckBox?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1127633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存