一,What is MaterialEditText?
AppCompat v21 使我們在APP中使用Material Design EditText很容易,但是限制太多,是以,一群牛人做了這個符合MaterialDesign的EditText元件,它是繼承EditText的,我們可以很友善的用它。我這裡隻是簡單地用下,詳細使用請參考以下官方文檔。 該開源項目位址 : MaterialEditText 中文文檔
二,實作效果
這比原來的EditText好看多了,有木有?未輸入狀态
輸入狀态
三,實作過程
1,導庫
我用的是gradle,是以直接在build.gradle裡加
compile'com.rengwuxian.materialedittext:library:2.1.4‘
2,用元件(以本圖使用者名為例)
<com.rengwuxian.materialedittext.MaterialEditText app:met_baseColor="#0056d3" //一些顔色,預設就行了 app:met_iconPadding="2dp" //圖示邊距 app:met_primaryColor="#982360" app:met_errorColor="#ddaa00" app:met_clearButton="true" //設定清楚按鈕,就是尾部的那個X app:met_iconLeft="@drawable/ic_perm_identity_black_24dp" //設定圖示資源,這裡是那個人頭圖示 app:met_singleLineEllipsis="false" //單行省略設定 android:layout_width="match_parent" android:lines="1" //行數 android:hint="使用者名" //我把它看作提示語 app:met_floatingLabelText="使用者名" //标簽文字,輸入狀态時它會浮在上面 app:met_floatingLabel="highlight" //标簽文字高亮 android:id="@+id/editText_username" android:layout_height="wrap_content" app:met_autoValidate="true" //自動校準 app:met_minCharacters="1" //最小字元數 app:met_maxCharacters="20" //最大字元數/>
其它屬性請參考上面的開源文檔
3,代碼設定
editText_username= (MaterialEditText) findViewById(R.id.editText_username); //指派
editText_username.isCharactersCountValid() //傳回字數是否符合要求 還有其他的屬性,比如可以設定正規表達式比對字元串等,我還沒用過,有興趣自己去研究吧。