In custom adapters click event handling, which is better (considering performance and memory) , 1)Defining click handler at ListView level. 2) Defining a click handler inside custom adapter.
Will defining click handler at Custom Adapter level increase the memory consumption?. Below is some sample pseudo code.
//Defining click handler at list level
layoutNotificationViewHolder.mNotificationListLv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
final SampleItem selectedItem = itemList.get(position);
Intent itemInfoIntent = new Intent(context, itemMoreInfoActivity.class);
itemInfoIntent.putExtra("selected_item", selectedItem);
context.startActivity(itemInfoIntent);
}
});
//Defining click handler inside adapter.
public View getView(final int position, View convertView, ViewGroup parent) {
final SampleItem selectedItem = itemList.get(position);
convertView.mCameraIv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent itemInfoIntent = new Intent(context, itemMoreInfoActivity.class);
itemInfoIntent.putExtra("selected_item", selectedItem);
context.startActivity(itemInfoIntent);
}
});
}