2017-10-17 60 views
0

因此,我有一個EditText pageTitle,其行爲取決於其onFocusListeneronClickListener以及另一種方法setListenerToRootView(),它檢測軟鍵盤是顯示還是隱藏。這個問題是每當我點擊pageTitle時,光標自動放置在開始處。我懷疑setListenerToRootView()負責這個錯誤,因爲當我刪除這個方法時,問題會自行解決。如何防止光標在EditText點擊時自動放置

但是,我確實需要這種方法,因爲另一個視圖的可見性(saveCancelBar)取決於軟鍵盤的可見性。有沒有什麼辦法可以保持這種方法,但要確保當用戶點擊pageTitle時,光標將被放置在他點擊的確切位置(而不是開始)?

The source code for my activity

回答

1

使用setSelection()以編程方式選擇上一個位置。 在onClickonFocus使用爲setSelection

 editTextName.setSelection(editTextName.getText().length()); 
+0

可悲的是,這並沒有爲我工作。 – Bargain23

+0

您能否提供您最新的代碼請 –

+0

我的意思是您的解決方案不是我的預期行爲。您的解決方案將光標置於「EditText」的第一次點擊時字符串/文本的末尾。我想要的是將光標放在用戶點擊「EditText」的位置(例如EditText包含字符串「sample」,用戶在'a'和'm'之間點擊光標(或閃爍的'|' )出現在'a'和'm'之間 – Bargain23

相關問題