列表視圖中可聚焦的EditText到目前為止,我已經(jīng)花了大約6個(gè)小時(shí)在這件事上,除了路障什么也沒碰到。一般的前提是,ListView(無論它是由適配器生成的,還是作為頭視圖添加的),其中包含EditText小部件和Button..我想要做的就是能夠使用慢跑球/箭頭,將選擇器導(dǎo)航到單個(gè)項(xiàng)目,比如普通的,但是當(dāng)我到達(dá)一個(gè)特定的行時(shí)-即使我必須顯式地識別行-有一個(gè)可聚焦的子行,我希望那個(gè)孩子集中注意力,而不是用選擇器指示位置。我嘗試過很多種可能性,但到目前為止都沒有運(yùn)氣。布局:<ListView
android:id="@android:id/list"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
/>標(biāo)題視圖:EditText view = new EditText(this);listView.addHeaderView(view, null, true);假設(shè)適配器中還有其他項(xiàng),使用箭頭鍵將按預(yù)期的方式在列表中向上/向下移動所選內(nèi)容;但是當(dāng)?shù)竭_(dá)標(biāo)題行時(shí),它也會與選擇器一起顯示,因此無法將焦點(diǎn)集中到EditText用慢跑球。注:敲擊EditText 將要在這一點(diǎn)上集中精力,然而,這依賴于觸摸屏,這不應(yīng)該是一個(gè)要求。ListView在這方面顯然有兩種模式:1. setItemsCanFocus(true):從不顯示選擇器,但EditText可以在使用箭頭時(shí)獲得焦點(diǎn)。焦點(diǎn)搜索算法很難預(yù)測,并且沒有視覺反饋(對任何行:有無可聚焦的子項(xiàng))選擇哪一項(xiàng),這兩者都會給用戶一個(gè)意想不到的體驗(yàn)。2. setItemsCanFocus(false):選擇器總是以非接觸模式繪制,并且EditText永遠(yuǎn)不能集中注意力-即使你敲擊它。更糟的是,打電話editTextView.requestFocus()返回true,但實(shí)際上不提供EditText焦點(diǎn)。我所設(shè)想的基本上是1和2的混合,其中而不是列表設(shè)置全項(xiàng)是否可聚焦,我希望將焦點(diǎn)可用性設(shè)置為單株項(xiàng),以便選擇器可以無縫地從非可聚焦項(xiàng)的整行選擇,以及對包含可聚焦子項(xiàng)的項(xiàng)遍歷焦點(diǎn)樹。有人接電話嗎?
3 回答

收到一只叮咚
TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
<activity android:name= ".yourActivity" android:windowSoftInputMode="adjustPan"/>
- 3 回答
- 0 關(guān)注
- 428 瀏覽
添加回答
舉報(bào)
0/150
提交
取消