Android 关于在listView中单击按钮的指示

Android 关于在listView中单击按钮的指示,android,listview,listviewitem,Android,Listview,Listviewitem,我使用以下代码: ListView simpleList = (ListView) findViewById(R.id.items); CustomAdapter customAdapter = new CustomAdapter(getApplicationContext(), itemsList, quantityList,this); simpleList.setAdapter(customAdapter); simpleList.setOnItemClickListener(new

我使用以下代码:

ListView simpleList = (ListView) findViewById(R.id.items);

CustomAdapter customAdapter = new CustomAdapter(getApplicationContext(), itemsList, quantityList,this);

simpleList.setAdapter(customAdapter);
simpleList.setOnItemClickListener(new AdapterView.OnItemClickListener() {

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

    }
ListView simpleList=(ListView)findViewById(R.id.items);
CustomAdapter CustomAdapter=新的CustomAdapter(getApplicationContext(),itemsList,quantityList,this);
simpleList.setAdapter(customAdapter);
simpleList.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
}
每一行看起来像下面的图片

我想知道用户何时单击加号/减号按钮。
我该怎么做?我已经启动了函数
setOnItemClickListener
,但不知道如何计数。

CustomAdapter
类中,声明那里的2个按钮

将其添加到
CustomAdapter

private static class MyViews{
    Button btn1;
    Button btn2;
}


  @Override
public View getView(int position, View convertView, ViewGroup parent) {

   final MyViews views;

    if (convertView == null)
    {
        views.btn1= (Button) convertView.findViewById(R.id.yourbutton1);
        views.btn2= (Button) convertView.findViewById(R.id.yourbutton2);

        result=convertView;

        convertView.setTag(views);
    }
    else
    {
        views = (MyViews) convertView.getTag();
        result=convertView;
    }

    btn1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //your code...
        }
    });

    btn2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //your code...
        }
    });

    return convertView;

}

并控制
CustomAdapter
类中的所有数据。

CustomAdapter
类中,声明其中的两个按钮

将其添加到
CustomAdapter

private static class MyViews{
    Button btn1;
    Button btn2;
}


  @Override
public View getView(int position, View convertView, ViewGroup parent) {

   final MyViews views;

    if (convertView == null)
    {
        views.btn1= (Button) convertView.findViewById(R.id.yourbutton1);
        views.btn2= (Button) convertView.findViewById(R.id.yourbutton2);

        result=convertView;

        convertView.setTag(views);
    }
    else
    {
        views = (MyViews) convertView.getTag();
        result=convertView;
    }

    btn1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //your code...
        }
    });

    btn2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //your code...
        }
    });

    return convertView;

}

并控制
CustomAdapter
类中的所有数据。

您还可以通过修改后的跟随代码来实现接口

您必须创建类的接口

public interface MyCustomAdpClick {
    public void plusClick();// You can pass argument whatever you needed

    public void minusClick();// You can pass argument whatever you needed
}
修改您设置的适配器代码,如下所示

 ListView simpleList = (ListView) findViewById(R.id.items);
    List<String> lis1 = new ArrayList<>();// change to your list of items here
    CustomAdapter customAdapter = new CustomAdapter(getApplicationContext(), lis1, lis1, new MyCustomAdpClick() {
        @Override
        public void plusClick() {// handle plus event
        }

        @Override
        public void minusClick() {//handle minus event
        }
    });

您还可以通过修改后的follow代码来实现您的接口

您必须创建类的接口

public interface MyCustomAdpClick {
    public void plusClick();// You can pass argument whatever you needed

    public void minusClick();// You can pass argument whatever you needed
}
修改您设置的适配器代码,如下所示

 ListView simpleList = (ListView) findViewById(R.id.items);
    List<String> lis1 = new ArrayList<>();// change to your list of items here
    CustomAdapter customAdapter = new CustomAdapter(getApplicationContext(), lis1, lis1, new MyCustomAdpClick() {
        @Override
        public void plusClick() {// handle plus event
        }

        @Override
        public void minusClick() {//handle minus event
        }
    });
您可以从正在设置加号/减号按钮的CustomAdapter本身执行此操作。显示您的CustomAdapter代码。您可以从正在设置加号/减号按钮的CustomAdapter本身执行此操作。显示您的CustomAdapter代码。可能重复的