解决方案 »

  1.   

    /**
     * 文字自动移动的TextView
     */
    public class MarqueeTextView extends TextView
    {
        public MarqueeTextView(Context context)
        {
            super(context);
            init();
        }    public MarqueeTextView(Context context, AttributeSet attrs)
        {
            super(context, attrs);
            init();
        }    public MarqueeTextView(Context context, AttributeSet attrs, int defStyle)
        {
            super(context, attrs, defStyle);
            init();
        }    private void init()
        {
            setEllipsize(TextUtils.TruncateAt.MARQUEE);
            setMarqueeRepeatLimit(Integer.MAX_VALUE);
        }    @Override
        public boolean isFocused()
        {
            return true;
        }
    }
    XML:
     <com.xx.widget.MarqueeTextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ellipsize="marquee"
                    android:marqueeRepeatLimit="marquee_forever"
                    android:singleLine="true"/>
      

  2.   

    这样只是可以实现跑马灯效果,我自己可以实现跑马灯效果,
    现在困难是Textview可以完全显示字符串的时候我要setGravity(Gravity.Right)靠右显示,但是字符串长过TextView控件宽度的时候要从字符串的第0个开始显示,然后现在是显示字符串的后面的字符,前面的字符被盖住了,虽然有跑马灯效果,但是刚显示的时候前面的字符显示不出来。