如何讓EditText無法換行?
阿新 • • 發佈:2019-01-04
一個入門級的Android問題:如何讓EditText只顯示一行,無法使用軟鍵盤的回車鍵換行?
這個簡單的問題也有一個小坑在裡面。
EditText的xml佈局檔案裡面有很多有關於行數的屬性:
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/marginNormal"
android:background ="@color/white"
android:ellipsize="end"
android:imeOptions="actionSearch"
android:gravity="start|center_vertical"
android:maxLines="1"
android:lines="1"/>
除了已經過時的singleLines屬性,現在還有maxLines和Lines屬性可以設定。
然而你會發現,即使同時設定了maxLines=”1”和lines=”1”,你的EditText依然是可以換行的。
其實很簡單,只需要加上一條屬性:
android:inputType="text"
這時你設定的maxLines和lines就起作用了。
(這是個很簡單的問題,stack overflow上面很容易找到這個解決方案,可是你在百度上卻搜不到這個。百度前幾條全是讓你設定maxLines和lines的,要麼是讓你動態設定setOnEditorActionListener的。其實根本不需要這麼麻煩。)