我有許多EditText
控件和附近的複選框。默認情況下,大多數EditTexts
已禁用。滾動時焦點會隨機跳躍
當我打開活動,一些隨機EditText
控制獲取焦點(它周圍的框架),如果你在敲打,屏幕上的鍵盤出現即使EditText
被禁止,當你按下上出現沒有文本屏幕鍵。
此外,我的整個佈局被包裹在ScrollView
。當你滾動時,一些隨機EditText
獲得焦點。它可以是最低的可見光,也可以是最高的可見光,或者有時在中間有一個,有時在可見光區之外。
由於佈局的隨機元素獲得焦點,所以打開它時隨機向下滾動該Activity,這非常煩人。
我想這是一個Android的錯誤,但有沒有解決方法?
Stop EditText from gaining focus at Activity startup處理情況只有1 EditText
你可以告訴失去焦點,以便虛擬元素可以獲得它。在我的情況下,虛擬元素無法獲得焦點,無論是在onResume或onCreate,都android:focusable="true" android:focusableInTouchMode="true"
我應該檢查所有EditText控件(其中12個),並告訴他們失去焦點?滾動什麼,因爲它看起來隨機跳轉。
剛剛嘗試在佈局中的每個EditText元素上調用clearFocus()和setSelected(false)。這沒有幫助。還有一些隨機的獲得焦點。 – iseeall
經過一些測試發現,它並不總是隨機獲得焦點,而是EditText元素具有與觸摸點相同的y位置。您不必完全觸及元素本身,而是觸及其右側或左側,然後開始滾動。經過一段時間後,即使EditText被禁用(不可編輯),EditText仍有很高的獲得焦點的機會 – iseeall