我遇到的问题是android:ellipsize在TextView中不起作用。 但要适用于android:singleLine。
我听说android:singleLine是“Deprecated”,但它不是在Android Developer的参考文献中写的。
https://developer.android.com/reference/android/widget/TextView.html#attr_android:singleLine
android:singleLine不再出现在“Deprecated”中?
增加: 我自己解决了这个问题。
事实证明,TextView属性的android:scrollHorizontally =“true”未反映在xml文件中。
所以,我尝试使用setHorizontallyScrolling方法,它有效。
*xml:*
<TextView
android:id="@+id/text"
android:ellipsize="end"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
*code:*
TextView textView = (TextView)findViewByID(R.id.text);
textView.setHorizontallyScrolling(true);
但是,我在xml中添加“android:inputType =”text“,如下所示,它不起作用。 请小心。
*xml:*
<TextView
android:id="@+id/text"
**android:inputType="text"**
android:ellipsize="end"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
答案 0 :(得分:0)
尝试将IME输入设置为短文本或类似内容。它可能会奏效。 elipsize存在很多问题,我在某个方面也遇到过这个问题并且无法解决。在我的情况下,它主要连接到editTexts,其他组件从视图中删除焦点。需要关注才能让Elipsize工作。
答案 1 :(得分:0)
我不确定在“Deprecated”中是否有android:singleLine的TextView不再存在,因为在TextView的弃用构造函数中,有一条关于singleLine配置的注释。
//如果设置,输入类型将覆盖使用不推荐的singleLine标志设置的内容。
singleLine =!isMultilineInputType(inputType);
源代码:大约1156L core/java/android/widget/TextView.java - platform/frameworks/base - Git at Google
由于Google发表评论称不推荐使用singleLine标志,(虽然它不是在开发者网站上写的),但可能是这样。