Android 单击按钮或带有custum适配器的listview行中的RelativeLayout时出现问题
我必须在我的listview行(是一个惰性列表)中捕捉对按钮或相对位置的点击。 我可以用这个代码来做这件事Android 单击按钮或带有custum适配器的listview行中的RelativeLayout时出现问题,android,listview,button,click,android-arrayadapter,Android,Listview,Button,Click,Android Arrayadapter,我必须在我的listview行(是一个惰性列表)中捕捉对按钮或相对位置的点击。 我可以用这个代码来做这件事 public class LazyAdapter extends BaseAdapter { private Activity _thisActivity; private Context _thisContext; private static LayoutInflater inflater=null; public ImageLoader imageL
public class LazyAdapter extends BaseAdapter {
private Activity _thisActivity;
private Context _thisContext;
private static LayoutInflater inflater=null;
public ImageLoader imageLoader;
ArrayList<ApplicationObject> apps;
private int pos=0;
public LazyAdapter(Activity activity,Context context, ArrayList<ApplicationObject> app)
{
_thisActivity = activity;
_thisContext = context;
inflater = (LayoutInflater)_thisActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
imageLoader=new ImageLoader(_thisActivity.getApplicationContext());
apps=app;
}
public int getCount() {
return apps.size();
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
View vi=convertView;
if(convertView==null)
vi = inflater.inflate(R.layout.home_listview_line4, null);
pos=position;
TextView title=(TextView)vi.findViewById(R.id.textView1);
title.setText(apps.get(position).getTitle());
ImageView image=(ImageView)vi.findViewById(R.id.imageView1);
imageLoader.DisplayImage(apps.get(position).getImageSource(), image);
TextView description=(TextView)vi.findViewById(R.id.textView2);
description.setText(shortDescription);
RelativeLayout rl = (RelativeLayout)vi.findViewById(R.id.oggettoRL);
rl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent i = new Intent(_thisContext,AppCompleteDescription.class);
i.putExtra("app", apps.get(pos));
_thisContext.startActivity(i);
}
});
Button bugReport = (Button)vi.findViewById(R.id.button1);
bugReport.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent i = new Intent(_thisContext,BugReportActivity.class);
i.putExtra("id", apps.get(pos).getId());
_thisContext.startActivity(i);
}
});
return vi;
}
}
在
onListMcClick中使用以下命令--
但是在我的活动中使用此代码,我如何理解是单击按钮还是布局?那么,onclicklistener是否直接在custum适配器中设置了错误?
final ListView list = (ListView)findViewById(R.id.list);
LazyAdapter lazy = new LazyAdapter(_thisActivity,_thisContext,listaApplicationObject);
list.setAdapter(lazy);
@Override
protected void onListItemClick(ListView l, View v, final int position, long id) {
super.onListItemClick(l, v, position, id);
Log.i("the Item clicked is :: ", position);
}