Android中控件TextView实现跑马灯只显示省略号问题

来源:互联网 发布:山东七月网络签约艺人 编辑:程序博客网 时间:2024/06/17 22:54

针对TextView的多余的文字只显示省略号的问题跟大家的分享一下!

原来布局是在xml中写的,有时候起作用,有时候不起作用,如下列代码:

 <TextView
            android:id="@+id/mTextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="25dp"
            android:layout_toRightOf="@id/airquality_pm25"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:marqueeRepeatLimit="marquee_forever"
            android:singleLine="true"
            android:textColor="@android:color/white" />

现在改为:自定义一个MarqueeTextView

import android.content.Context;
import android.util.AttributeSet;
import android.widget.TextView;

public class MarqueeTextView extends TextView
{

    public MarqueeTextView(Context context)
    {
        super(context);
    }

    public MarqueeTextView(Context context, AttributeSet attrs)
    {
        super(context, attrs);
    }

    public MarqueeTextView(Context context, AttributeSet attrs, int defStyle)
    {
        super(context, attrs, defStyle);
    }

    @Override
    public boolean isFocused()
    {
        return true;
    }

}


xml中使用如下:

<com.view.MarqueeTextView
            android:id="@+id/airquality_level"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="25dp"
            android:layout_toRightOf="@id/airquality_pm25"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:marqueeRepeatLimit="marquee_forever"
            android:singleLine="true"
            android:textColor="@android:color/white" />

这样就轻松搞定一直跑马灯的效果啦

0 0
原创粉丝点击