在我的一項活動中,我有多個ListView控件。說清單1,清單2 & 清單3。在列表1項目的點擊,我加載數據爲列表2 & 列表3從web服務。被點擊的項目的背景被突出顯示。我通過以下選擇器實現了這一點如何在ListView的setOnItemClickListener中取消Android ListView項目的激活/高亮顯示?
<item android:drawable="@drawable/item_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/item_focused" android:state_focused="false"
android:state_pressed="false"
android:state_selected="true"/>
<item android:state_activated="true" android:drawable="@drawable/item_selected"/>
正如你所看到的,我已指定機器人:state_activated =「真」改變點擊/輕按的項目的BG。這很好。
其實我想防止被選擇的項目點擊/高亮如果正在加載一些其他項目的數據...喜歡
list1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// load data if no other call to web service is in progress
if (_isNotLoadingData) {
loadList2AndList3DataUsingWebService();
} else {
//Stop This Item From selected/highlighted
//BUT none of the following work. .. Item is always Selected
view.setSelected(false);
//view.setActivated(false);
//view.setEnabled(false);
}
}
});
上面的代碼將停止多次調用被引導到我們的Web服務,但如果沒有爲該ListView項目調用Web服務,我無法停止突出顯示/激活項目。
我該如何操作?
在下午8時08分2012年3月19日編輯:沒有正確答覆可是...我堅持&等待任何幫助
爲什麼要取消點擊? – 2012-03-14 10:37:40
爲什麼你不只是做一個if語句到你的onItemClick方法?如果這是onItemClick函數中的第一件事,那麼它與onBeforeClick()函數基本相同... – KarlKarlsom 2012-03-14 10:57:07
我已更新我的問題並已解釋。對不起,提供一個不明確的問題 – Aamir 2012-03-14 13:04:53