在TextView中自动水平滚动的问题

时间:2013-01-16 08:18:27

标签: android scroll textview chronometer

如果我的文字太长,我想实现自动水平滚动。当活动为空而没有任何关注时,它工作。但是当我尝试在计时器的活动中实现它时,它不起作用。我测试它没有天文台它工作。我试图使用setSelected(true),它也不起作用。有没有办法解决这个问题,我需要使用计时器的滚动功能。任何意见和答案将不胜感激。

ScrollTextView.class

public class ScrollingTextView extends TextView{

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

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

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

@Override
protected void onFocusChanged(boolean focused, int direction,
        Rect previouslyFocusedRect){
    if(focused){
        super.onFocusChanged(focused, direction, previouslyFocusedRect);
    }
}

@Override
public void onWindowFocusChanged(boolean focused){
    if(focused){
        super.onWindowFocusChanged(focused);
    }
}

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

的TextView

<com.android.app.ScrollingTextView
    android:id="@+id/display_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:paddingLeft="10dp"
    android:paddingTop="10dp"
    android:singleLine="true"
    android:text="Display Message"
    android:textSize="18dp"
    android:textColor="#ffffff"
    android:ellipsize="marquee"
    android:scrollHorizontally="true"
    android:fadingEdge="horizontal"
    android:marqueeRepeatLimit="marquee_forever"
    android:focusableInTouchMode="true"/>

2 个答案:

答案 0 :(得分:0)

XML

中添加此内容

我自己已经明白了。

android:focusable="true" 

&安培;然后再试一次。

修改:

我遇到了这个问题

就我而言,这就是为什么Textview不滚动的原因,

我在上面的textview中放了一个listview,所以textview不滚动。所以这就是这个。

set listview focusable is false

listview.setfocusable(false);

然后它的工作原理是滚动。

答案 1 :(得分:0)

试试这个,它可能对你有帮助。

<TextView
            android:id="@+id/textView"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:onClick="onClick" 
            android:smoothScrollbar="true"
            android:scrollbars="vertical"
             android:maxLines="6"
            android:ellipsize="none"
            android:scrollHorizontally="false"
            android:singleLine="false"
            />