如何在Android sdk的textview中替换带淡化/淡化边缘的椭圆?

时间:2011-09-20 17:17:51

标签: android textview fade truncate edge

我有一个列表,列表中的每一行都有文本。一些文本超出了屏幕的边缘。我没有问题,它截断文本并显示省略号。我没有问题'淡化文本的边缘'但是,淡入淡出发生在每个文本的边缘,而不仅仅是文本视图的太大。我已经搜索过并且找不到基本上完全省略号的方法但是,而不是省略号,只淡化文本的边缘 它离开了屏幕的边缘。有人可以帮忙吗?仅供参考,我的文本视图包含:

android:fadingEdge="horizontal" 
android:inputType="text"
android:maxLines="1"
但是,显然,我已经尝试了许多其他事情无济于事......:_(

2 个答案:

答案 0 :(得分:4)

启用选取框并且模拟不影响列表选择只需使用以下内容:

在代码中只需对该文本View使用两种方法。

textViewObj.setSelected(true);
textViewObj.setEllipsize(TextUtils.TruncateAt.MARQUEE);

答案 1 :(得分:2)

启用水平边缘淡入淡出(在右侧)的特定方法调用是

setHorizontalFadingEdgeEnabled(true)

以下是我的类ScrollTextView中的构造函数的示例,它扩展了TextView:

public ScrollTextView(Context context, AttributeSet attrs) {
    this(context, attrs, android.R.attr.textViewStyle);
    setHorizontalFadingEdgeEnabled(true);
}