lstviewBlockedVenues.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> obj, View arg1, int pos,
long arg3) {
Data.currVenueInfo = (VenueInfo) obj.getItemAtPosition(pos);
String venueList = "";
if(swipeDetector.swipeDetected())
{
try {
Button btnBlock = (Button) arg1.findViewById(R.id.btnBlockVen);
Toasts.pop(getApplicationContext(), "Swiped");
System.out.println(btnBlock.getVisibility());
if(btnBlock.getVisibility() != View.VISIBLE)
{
btnBlock.setVisibility(View.VISIBLE);
}
else
{
btnBlock.setVisibility(View.GONE);
}
System.out.println("Inside swipe");
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
在上面的代码中,我试图在用户滑动行时在单行上显示一个按钮。最初按钮的可见性消失了。当我第一次在任何一行上滑动时,它完美地工作并且该行的按钮变得可见。但是,如果我再次刷同一行,那么按钮应该按照我编写的代码消失,但是当我下次滑动行时,会检测到滑动事件,但代码不会执行:(。但如果我删除了行btnBlock.setVisibility(View.VISIBLE); and btnBlock.setVisibility(View.VISIBLE);
然后显示toast msg和logcat msg。我不知道为什么它第二次没有工作。
由于
答案 0 :(得分:2)
将该按钮的焦点更改为FALSE,因为它不允许列表视图行具有焦点。