android:单行链接的TextView在“已弃用”中不再存在?

时间:2011-08-11 12:48:51

标签: android textview deprecated

我遇到的问题是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:scrollHorizo​​ntally =“true”未反映在xml文件中。

所以,我尝试使用setHorizo​​ntallyScrolling方法,它有效。

*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"
/>

2 个答案:

答案 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标志,(虽然它不是在开发者网站上写的),但可能是这样。