2010-08-30 22 views
1

我在尋找如何添加ListView選擇器的建議,這個選擇器是'永久'的。通過這個,我的意思是ListView中的單個行總是突出顯示;它應該向上或向下移動以響應任何D-pad印刷機(即,像默認選擇器),但是如果用戶在任一方向上滾動ListView(即,即使在屏幕外它仍然被突出顯示),它也保持設置/ 。對ListView中的'永久'選擇器的建議

我已經看過使用標準選擇器機制,但如果ListView被觸摸(因此滾動),我無法讓選擇器保持原位,所以它讓我覺得這不是最好的選擇?也許有我忽略的<selector>state_*」?

另一種選擇是使用onItemSelected()回調,但起初看起來這看起來更復雜?

任何建議/建議/經驗感激地receeved。

乾杯

詹姆斯

回答

0

我正在尋找關於如何去添加一個ListView選擇是「永久性」的建議。

請不要這樣做。觸摸模式中沒有選擇,這是通過設計。如this article中所述,「如果需要持久選擇(單選按鈕,複選框,ListView選擇模式等),請使用相應的功能。不要試圖將焦點或選擇保持在觸摸模式下。」

+0

謝謝馬克。 「永久選擇」背後的原因是因爲我有兩個視圖,每個在第一個視圖中選擇需要在ListView中「鏡像」。目前,我使用setSelectionFromTop()將項目置於列表的頂部。這很好,但有一個額外的視覺線索(即顏色)可以幫助用戶識別ListView中發生的事情(特別是ListView中的最後一項顯然不能設置爲ListView的頂部)。 那麼,做到這一點的方式將離開'選擇',只是設置背景? – James 2010-08-30 10:23:44

+0

@James:「在第一個視圖中進行選擇需要在ListView中'鏡像'。」 - 爲什麼? 「所以,這樣做的方式是離開'選擇'並設置背景?」 - 背景混亂是有點痛苦,並會與真正的選擇相沖突。如果你真的需要這個,也許可以在'View.VISIBLE'和'View.INVISIBLE'之間切換一些圖標來表示正在'View'中操作的行,或者改變一些文本顏色。但是,老實說,我無法想象一個提供兩個地方來選擇相同的東西的UI('View'和'ListView')很好地利用了屏幕空間。 – CommonsWare 2010-08-30 10:31:01

+0

是的。這就是我擔心改變背景的原因。我會去(圖標/文字顏色)指示。再次感謝。 – James 2010-08-30 10:39:07