editText有些常用設定,有時候會不小心忽略掉。雖然有些不是必備,但使用者體驗的優化還是很重要ㄉ,繼續看下去。
圖片來源:台灣漫畫基地
<EditText
android:id="@+id/et_phone_verify_code"
style="@style/EditTextStyle"
android:layout_width="match_parent"
android:layout_height="36dp"
android:layout_marginTop="6dp"
android:background="@color/colorf8f8f8"
android:focusableInTouchMode="true"
android:hint="@string/phone_verify_code"
android:imeOptions="actionDone"
android:inputType="number"
android:paddingStart="16dp"
android:singleLine="true"/>
記得設定singleLine跟InputType,以及設定每個editText的軟鍵盤右下角的按鍵,一般預設會顯示enter,想改的話可以利用edittext的imeOptions屬性依需求改成不同功能鍵。
還不太懂,可參考這篇
設定密碼顯示
et.inputType = InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
設定密碼隱藏:
et.inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_VARIATION_PASSWORD
因為上述調整完後,edittext的游標會回到最前面,所以要同時設定這一行,把游標保持在最末端
et.setSelection(et.text.length)
fun hideKeyboard(view: View, nextFoocusView: View = view.rootView) {
val imm = view.context?.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(view.windowToken, 0)
view.clearFocus()
nextFoocusView.requestFocus()
}
我們要監聽使用者按下軟鍵盤的控制鍵,譬如軟鍵盤右下角的完成鈕
et.setOnEditorActionListener { v, actionId, event ->
if(actionId == EditorInfo.IME_ACTION_DONE){
....
}
false
}
可以與imeOption屬性做搭配!!!!
imeOptions=”actionUnspecified” –> EditorInfo.IME_ACTION_UNSPECIFIED
imeOptions=”actionNone” –> EditorInfo.IME_ACTION_NONE
imeOptions=”actionGo” –> EditorInfo.IME_ACTION_GO
imeOptions=”actionSearch” –> EditorInfo.IME_ACTION_SEARCH
imeOptions=”actionSend” –> EditorInfo.IME_ACTION_SEND
imeOptions=”actionNext” –> EditorInfo.IME_ACTION_NEXT
imeOptions=”actionDone” –> EditorInfo.IME_ACTION_DONE
30天過去,鐵人賽與案子的壓力算是幫我分擔了很多容易胡思亂想的時間,但即使一個月過去,思考中斷的間隙總還是會被那些思緒趁虛而入。
曾大言不慚我們不會被時間沖淡,現在卻只希望它沖淡一切。
事情發生後連帶產生的自我懷疑也成為新的負擔,工作上一有不順就常常質疑自己,覺得是不是不夠努力,不夠聰明,是不是什麼都做不好。
這一個月相當難熬,但還是過來了,謝謝自己,也謝謝身邊那些帶來溫暖的人。2020鐵人賽完賽,該吃海港城了八!!