關鍵字:TextInputLayout、TextInputEditText、材料設計
項目地址:AboutMaterialDesign
效果展示.gif
是不是覺得有點丑? 我也覺得。。但是就這樣吧,改不動了。
一、從官網看到的
- 介紹:TextInputLayout 作為 EditText 的容器,擴展了它的三個常用功能:
- 1.Hint 的動畫上移隱藏
- 2.EditText 的字數上限控制和當前字數的顯示
- 3.錯誤提示
- 4.密碼輸入模式
- 官方提示:子 View 使用 TextInputEditText 效果更佳
常用功能展示
根據功能,新屬性主要有以下幾個:
屬性 | 說明 |
---|---|
app:Theme | 設置下劃線或其他的顏色屬性 |
android.support.design:counterEnabled | 是否顯示計數器 |
android.support.design:counterMaxLength | 設置計數器的最大值,與counterEnabled同時使用 |
android.support.design:counterTextAppearance | 計數器的字體樣式 |
android.support.design:counterOverflowTextAppearance | 輸入字符大于我們限定個數字符時的字體樣式 |
android.support.design:errorEnabled | 是否顯示錯誤信息 |
android.support.design:errorTextAppearance | 錯誤信息的字體樣式 |
android.support.design:hintAnimationEnabled | 是否顯示hint的動畫,默認true |
android.support.design:hintEnabled | 是否使用hint屬性,默認true |
android.support.design:hintTextAppearance | 設置hint的文字樣式(指運行動畫效果之后的樣式) |
android.support.design:passwordToggleDrawable | 設置密碼開關Drawable圖片,于passwordToggleEnabled同時使用 |
android.support.design:passwordToggleEnabled | 是否顯示密碼開關圖片,需要EditText設置inputType |
android.support.design:passwordToggleTint | 設置密碼開關圖片顏色 |
android.support.design:passwordToggleTintMode | 設置密碼開關圖片(混合顏色模式),與passwordToggleTint同時使用 |
二、一般使用,并沒有高級
- 注意點:
- 看 TextInputLayout 的構造方法發現,上面四個功能里, hint 是默認打開的,其他都是關閉的,需要另行打開。
- errorEnable 這個屬性在輸入正確后需要及時置為 false,否則 hint 的動畫是失效的,其他 bug 暫時沒有發現
demo 只做了最基礎的設置,其他的屬性需要寫 style 樣式,就不再寫了。
最終.gif