如果我的文字太长,我想实现自动水平滚动。当活动为空而没有任何关注时,它工作。但是当我尝试在计时器的活动中实现它时,它不起作用。我测试它没有天文台它工作。我试图使用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"/>
答案 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" />