В пользовательских адаптерах обработка событий клика, которая лучше (с учетом производительности и памяти), 1) Определение обработчика клика на уровне ListView. 2) Определение обработчика щелчков внутри пользовательского адаптера.
Увеличит ли потребление памяти определение обработчика кликов на уровне пользовательского адаптера?
Ниже приведен пример псевдокода.
// Определение обработчика кликов на уровне списка
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);
}
});
// Определение обработчика щелчка внутри адаптера.
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);
}
});
}