2014-06-11 33 views
0

嘿所以我有一個按鈕的列表視圖,當你點擊一下,如果你跳過4更多的listview項目第五顯示它已被點擊在相同放置前一個被點擊。當一個按鈕被點擊時,它被設置爲不可見,並顯示下面的虛擬按鈕(這是每隔五行顯示的按鈕)。 在onclick命令中聲明按鈕不可見的代碼Listview項目顯示他們已被點擊時,他們還沒有

boolean processClick = true;

if(processClick == true) 
    { 
     myButton.setEnabled(false); 
     myButton.setClickable(false); 
     myButton.setVisibility(View.INVISIBLE); 



     } 
     processClick=false; 
     } 

尋找一些類似的問題,我認爲這與再循環的意見去做,但仍然不知道如何解決這個問題。

任何幫助都非常感謝。 謝謝!

回答

0

我在編程上將背景顏色分配給我的列表視圖項目時遇到了類似的問題。我不知道是什麼導致了問題(可能getView()沒有得到正確調用)。我通過使用if-else解決了我的問題。在你的情況下這樣的事情應該工作:

if(processClick == true) 
{//set desired result in if 
    myButton.setEnabled(false); 
    myButton.setClickable(false); 
    myButton.setVisibility(View.INVISIBLE); 

    }else{//reset items to original in else 
    myButton.setEnabled(true); 
    myButton.setClickable(true); 
    myButton.setVisibility(View.GONE); 
} 
+0

此代碼絕對似乎工作更好,但現在它跳過6列表視圖項目,並顯示第7被按下。這絕對是一個奇怪的問題,我想我可能只需要最終將點擊存儲在數據庫中。 – user3376237

+0

可能是由於數組索引從零開始選擇了錯誤的位置,但大小將是最後一個位置+ 1。我在爲自定義適配器擴展baseadapter時觀察到了這一點。 ArrayAdapter doesnot給這個問題,我猜。 –

+0

是啊,即時通訊使用基礎適配器,感謝您的迴應,我會着眼於此,我也只是注意到,如果它是listview的第一項,這並不奇怪發生。然而,第二和第三排名項目仍然存在。 – user3376237

相關問題