android singleLine与maxLines有什么区别?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

我认为singleLine="true"相当于,maxLines="1"但我发现Android Studio中的以下预填充字段同时具有这两个字段。有区别吗?是否有一个已知的错误导致两者都需要?

<EditTextPreference
   android:key="example_text"
   android:title="@string/pref_title_display_name"
   android:defaultValue="@string/pref_default_display_name"
   android:selectAllOnFocus="true"
   android:inputType="textCapWords"
   android:capitalize="words"
   android:singleLine="true"
   android:maxLines="1" />
提问于
用户回答回答于

MAXLINES

在EditText中,maxLines特性值设置为5,那么在EditText中只能看到五行文本,而Enter键中的Enter键 也是可见的。

单线

在EditText中,singleLine属性被设置为真值,然后只有一行 文本是int EditText可见以及键盘上的Enter键对于进入我们而言不可见。

用户回答回答于

从Android网站:

singleLine

将文本约束为一条水平滚动线,而不是让它包装到多条线上,并在按下回车键时提前聚焦而不是插入换行符。对于不可编辑的文本,默认值为false(多行封装文本模式),但如果为inputType指定了任何值,则默认值为true(单行输入字段模式)。 必须是布尔值,可以是“true”或“false”。

maxLines

使TextView最多只有这么多行。在可编辑文本上使用时,必须将inputType属性的值与用于应用maxLines属性的textMultiLine标志组合。 必须是整数值,例如“100”

请注意,singleLine已被弃用,因为应该使用API​​ 3和maxLines。所以你真正需要的是:

android:maxLines = integer // 1 for single line or add lines multiple as well.

扫码关注云+社区