2010-11-03 130 views
1

我在Android 2.1上,我有一個多列自定義列表視圖在列表視圖的末尾使用帶有可編輯edittext的BaseAdapter。如果列表視圖中的數據不包含用戶選擇的數據,則用戶應該能夠輸入數據。如果數據已經在列表中,那麼用戶將能夠使用自定義選擇器來選擇數據。如果在列表視圖中進行了選擇,並且用戶希望在選擇後在底部的文本字段中輸入數據,則應該取消選擇列表視圖中的標記。我嘗試使用click listener在編輯文本上使用onclick()方法。第一次點擊時,編輯文本變得焦點並且onclick()方法不會被觸發。當第二次點擊時,會觸發onclick()方法並調用notifyDataSetChanged()方法。我試圖從Focus Listener調用notifyDataSetChanged()方法,列表視圖選擇在我的第一次嘗試中消失,編輯文本沒有從鍵盤接收任何數據輸入(凍結)。請幫助。謝謝,文卡特多列自定義列表視圖,在列表視圖末尾有一個可編輯的編輯文本

回答

1

最後我修好了。 notifytextSetChanged()獲得的edittext是遞歸調用自己。因此,這個問題就在那裏。因此,我不是從焦點偵聽器調用notifyDataSetChanged(),而是使用activity中的一個方法來更新edittext的焦點偵聽器中的列表。因此,沒有使用notifyDataSetChanged()遞歸的問題。