为什么ListView项目在滚动后变得不可点击

Col*_*ire 3 android listview clickable

ListViewImageView和创建了一个自定义,并且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();
}
Run Code Online (Sandbox Code Playgroud)

Col*_*ire 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) {}
    });
Run Code Online (Sandbox Code Playgroud)