我们可以用这个
设置单行TextView textView = (TextView) view.findViewById(R.id.someTextView);
textView.setSingleLine(true);
但是单线事件getSingleLine()
的获取状态不会退出。
如何检查文本视图的单行是打开(true)还是关闭(false)?
我的目标API级别是15。
答案 0 :(得分:3)
我认为不推荐使用singleLine,您应该使用textView.setMaxLines(1)
,然后使用textView.getMaxLines()
,以便了解textView是否为singleLine:
boolean isSingleLine = textView.getMaxLines() == 1;
编辑API 15
但是如果您在这种情况下使用singleLine
来了解TextView是否为singleLine,您可以使用API 1中提供的getTransformationMethod()
,如下所示:
boolean isSingleLine = textView.getTransformationMethod() == SingleLineTransformationMethod.getInstance();
答案 1 :(得分:1)
您应该使用getMaxLines()
。
tv.setSingleLine( true ) || tv.setMaxLines( 1 );
int maxLines = tv.getMaxLines();
Assert.assertTrue( 1, maxLines );
setSingleLine()
的文档说:
将此字段的属性(线条,水平滚动,变换方法)设置为单行输入。
我不喜欢这个,就是他们在setMaxLines(1)
和其他一些人身上放了一个漂亮的包装。
而under the covers,此方法确实将行数设置为1。