【发布时间】:2013-08-21 11:21:05
【问题描述】:
我的应用程序中有一个EditText,我希望它有两行,显示 ime 按钮而不是输入键,并将太长的文本移动到下一行(如在短信应用程序中)。现在我有这样的东西:
<AutoCompleteTextView
android:id="@+id/name_field"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@null"
android:freezesText="true"
android:hint="@string/some_hint"
android:imeOptions="actionNext"
android:maxLength="100"
android:nextFocusDown="@null"
android:lines="2"
android:ellipsize="end"
android:inputType="textImeMultiLine"
android:selectAllOnFocus="true"
android:textColor="@android:color/black"
android:textSize="16sp" />
它有两个我提到的第一个属性,但我不记得有任何选项可以让我达到第三个。
例如:如果我的EditText 中的一行有 10 个字符,我想像这样显示文本“abc abcd abc abcdefghijk”:
abc abcd
abc abc...
编辑:
似乎问题出在android:inputType="textImeMultiLine"。当我将其更改为android:inputType="textMultiLine" 时,一切正常,但是...我有输入按钮而不是 IME 按钮,这是我想避免的。
【问题讨论】:
-
你能更清楚你到底想要什么..
-
如果文本不能在一行中显示(因为文本太长),我想在第二行显示其余部分。
-
android:lines可能是.. -
如果你给 wrap_content 作为编辑文本的高度,那么它会根据内容的长度自动调整它的高度..
-
在我的帖子中你可以看到我已经设置了
android:lines="2"。不幸的是,没有回车的文本只显示在第一行。