我使用ListView
和ImageView
创建了一个自定义TextViews
,并且在我尝试实施onItemClick
之前,每件事都运行良好,暂时只显示Toast。
当我向下滚动ListView
时会出现问题:它不会收到任何点击。
有趣的是,当我使用键盘从一个项目移动到另一个项目时,它会起作用,当我点击输入时,显示Toast
这是我用于onItemClick
监听器的代码。
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
RestaurantReservationBean clickedItem = resultArray.get(position);
Toast.makeText(this, clickedItem.getName()+", "+clickedItem.getCost(), 1000).show();
}
答案 0 :(得分:9)
我认为我解决了这个问题:经过一些文档后,我发现这个问题来自于阻止onitemselected监听器的每一行顶部的textviews和imagesview。所以我试图刷新滚动后的列表视图,它工作得很好。这就是我所做的,希望它能帮助那些可能遇到这个问题的人
listView.setOnScrollListener(new OnScrollListener() {
public void onScrollStateChanged(AbsListView view, int scrollState) {
if ( scrollState == OnScrollListener.SCROLL_STATE_IDLE )
{
listView.invalidateViews();
}
}
@Override
public void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) {}
});