2017-09-19 63 views
1

我试图用替换android:maxLines="1",因为它已被弃用。当然它并没有按计划进行,这里是我的问题:停止TextView截断整个单词

如果我有一个字符串

String s = "this is a sample" 

,并使用singleLine="true"我得到的是这样的:

 (View) 
+-------------+ 
|this is a sam| 
+-------------+ 

但是使用maxlines="1"我现在得到:

 (View) 
+-------------+ 
|this is a | 
+-------------+ 

(在这两个版本中,我正在使用ellipsize="none") 由于sample不适合,它完全删除而不是截断。问题是,我真的需要尽可能多地插入文本,不要紧,它在一个词的中间被裁剪。有没有办法解决这个问题?

+0

检查的TextView [自动调整大小(https://developer.android.com/guide/topics/ui/ look-and-feel/autosizing-textview.html) – Ibrahim

回答

2

我想这就是你想要做的。

在布局:

<TextView 
    android:layout_width="65dp" 
    android:layout_height="wrap_content" 
    android:ellipsize="none" 
    android:inputType="text" 
    android:maxLines="1" 
    android:text="this is a sample" 
    tools:ignore="TextViewEdits"/> 

<android.support.v7.widget.AppCompatTextView 
    android:layout_width="65dp" 
    android:layout_height="wrap_content" 
    android:ellipsize="none" 
    android:inputType="text" 
    android:maxLines="1" 
    android:text="this is a sample"/> 

而这种码的结果:

Result

+0

设置android:inputType =“text”是解决问题的部分,但如果还有其他后果,还不确定。 –