0
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);然后显示吐司味精和logcat味精。我不知道为什么它第二次不起作用。

谢谢

4

1 回答 1

2

将该按钮的可聚焦更改为 FALSE,因为它不允许列表视图行获得焦点。

于 2012-04-06T13:05:06.540 回答