Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在listview中获取按钮的Id?_Android_Button_Onclick_Android Listview - Fatal编程技术网

Android 如何在listview中获取按钮的Id?

Android 如何在listview中获取按钮的Id?,android,button,onclick,android-listview,Android,Button,Onclick,Android Listview,在我的应用程序中,我使用了一个列表活动,其中我传递了一个ArrayAdapter,getView()方法如下 @Override public View getView(final int position, View convertView, ViewGroup parent) { mPosition= position; LayoutInflater inflater = context.getLayoutInflater(); View rowView = infl

在我的应用程序中,我使用了一个列表活动,其中我传递了一个ArrayAdapter,getView()方法如下

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    mPosition= position;
    LayoutInflater inflater = context.getLayoutInflater();
    View rowView = inflater.inflate(R.layout.imagelistlayout, null, true);
    deleteButton= (Button)rowView.findViewById(R.id.delete_bn);
    deleteButton.setTag(position);
    TextView textView = (TextView) rowView.findViewById(R.id.label);
    textView.setText(names[position]);


    return rowView;

} 

现在我想在deleteButton上设置onclicklistener()。单击相应的删除按钮时,将删除该项目。请帮助我。

您应该将
OnClickListener
直接添加到
getView()中的按钮中


我最近在应用程序中使用了一段代码

((Button) l.findViewById(R.id.btn_rm)).setOnClickListener(new OnClickListener(){
public void onClick(View v) { 

    list_of_elements.remove(position);      
    My_Custom_List_Adapter.this.notifyDataSetChanged(); 
}                   
});

请注意,这是在expandablelistadapter中开发的,因此它可能与常规listadapter略有不同

2.在使用ListView的活动中实现它

delete(int position) 
{
adapter.remove(position) // modify the syntax as per need .
}
3.通过构造函数将此接口传递给适配器


4.在getView中为deletebutton编写onClickListener,并调用i
interface.delete(position)
您可以使用视图可用的setTag方法。在deletebutton setTag和onClicklistener上设置id/位置您可以通过查看获取id/位置。getTag()

检查此链接:谢谢Herry,这对我很有用。谢谢Paresh Mayani此链接非常有用。
delete(int position) 
{
adapter.remove(position) // modify the syntax as per need .
}
...
deleteButton.setOnClickListener( new OnClickListener() {
public void onClick( View v ) {
  //Handle deleting the item here.
  // or item enable -> false
 v.getParent()
}
});
...