Android 获取列表视图中复选框的位置

Android 获取列表视图中复选框的位置,android,listview,checkbox,onitemclicklistener,Android,Listview,Checkbox,Onitemclicklistener,我有一个lisview,其中每行有三个文本框和一个复选框,我使用下面的代码片段来获取复选框的确切位置,它对我很有效,但是现在我不想把它放在列表视图中。setOnItemClickListener因为我想通过按钮而不是单击列表视图中的项目或行来删除选中的项目,但我不知道将这些代码放在何处以实现我的目标,我将提前感谢您的关注和建议 listView.setOnItemClickListener(new OnItemClickListener() { public void onItemCl

我有一个lisview,其中每行有三个文本框和一个复选框,我使用下面的代码片段来获取复选框的确切位置,它对我很有效,但是现在我不想把它放在
列表视图中。setOnItemClickListener
因为我想通过按钮而不是单击列表视图中的项目或行来删除选中的项目,但我不知道将这些代码放在何处以实现我的目标,我将提前感谢您的关注和建议

listView.setOnItemClickListener(new OnItemClickListener() {

    public void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {

        CheckBox cbx = (CheckBox)view.findViewById(R.id.ChkOrder);

            int firstPosition = listView.getFirstVisiblePosition();
            for(int i=firstPosition;i<listView.getCount();i++){
            View v=listView.getChildAt(i);
            cbx = (CheckBox)v.findViewById(R.id.ChkOrder);
            if(cbx.isChecked()){

                 Toast.makeText(getApplicationContext(), 
                                 "Checked position " + goods.get(i), 
                                  Toast.LENGTH_SHORT).show();
                 checkedItemPosition=i;


           }
        }

     }

});
listView.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父视图、视图、整型位置、,
长id){
复选框cbx=(复选框)view.findViewById(R.id.ChkOrder);
int firstPosition=listView.getFirstVisiblePosition();

对于(int i=firstPosition;i将通过将其置于首选按钮并将视图更改为您在代码中声明的
listview
来解决:

Button Delete=(Button)findViewById(R.id.DeleteButton);
       DeleteGoods.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {

                /** Getting the position of the currently selected item**/
                //////////////////////////////////
                 CheckBox cbx = (CheckBox)listView.findViewById(R.id.ChkOrder);

                    int firstPosition = listView.getFirstVisiblePosition();
                    for(int i=firstPosition;i<listView.getCount();i++){
                    View v1=listView.getChildAt(i);
                    cbx = (CheckBox)v1.findViewById(R.id.ChkOrder);
                    if(cbx.isChecked()){

                        // Toast.makeText(getApplicationContext(), 
                               //          "Checked position " + goods.get(i), 
                                //          Toast.LENGTH_SHORT).show();
                         checkedItemPosition=i;
                    }
                    }
Button Delete=(Button)findviewbyd(R.id.DeleteButton);
setOnClickListener(新的OnClickListener(){
公共void onClick(视图v){
/**获取当前选定项目的位置**/
//////////////////////////////////
复选框cbx=(复选框)listView.findViewById(R.id.ChkOrder);
int firstPosition=listView.getFirstVisiblePosition();
for(int i=第一位置;i