比较来自世界各地的卖家的域名和 IT 服务价格

Android 自动水平滚动 TextView

我正在尝试实现一个线的文本视图 scroll 自动地。 但是,不幸的是,我无法努力。 AutoScrollTextView 宣布在里面 LinearLayout /width and height = fill_parent/. 该类基本上使用了使自己的处理程序 scroll 在给定的价值。 我简化了代码只能显示应该滚动的文本视图 5 每秒像素。

杂志纠正,方法的结论 getScrollX// 返回相应的位置 scrollX.

如果我不打电话
requestLayout//

, 什么都不会被绘制。
invalidate//

没有效果没有影响。

有没有人有randering的关键?


public class AutoScrollTextView extends TextView {

public AutoScrollTextView/Context context, AttributeSet attrs, int defStyle/ {
super/context, attrs, defStyle/;
setSingleLine//;
setEllipsize/null/;
setText/"Single-line text view that scrolls automatically if the text is too long to fit in the widget"/;
}

// begin to scroll the text from the original position
public void startScrolling// {
scrollHandler.sendEmptyMessage/0/;
}

private Handler scrollHandler = new Handler// {
private static final int REFRESH_INTERVAL = 1000;

public void handleMessage/Message msg/ {
scrollBy/5, 0/;
requestLayout//;
Log.debug/"Scrolled to " + getScrollX// + " px"/;
sendEmptyMessageDelayed/0, REFRESH_INTERVAL/;
}
};
}
已邀请:

石油百科

赞同来自:

如果您不需要归类
TextView

, 您可以尝试在布局文件中执行以下操作:


<textview android:ellipsize="marquee" android:focusable="true" android:focusableintouchmode="true" android:layout_height="wrap_content" android:layout_width="wrap_content" android:marqueerepeatlimit="marquee_forever" android:scrollhorizontally="true" android:singleline="true" android:text="Single-line text view that scrolls automatically if the text is too long to fit in the widget"></textview>


此外,您在代码中使用以下内容:


findViewById/R.id.serviceColorCode/.setSelected/true/;


[答案是根据意见编辑的]

郭文康

赞同来自:

在这之后 xml 代码回复 @rajat


<textview android:ellipsize="marquee" android:focusable="true" android:focusableintouchmode="true" android:layout_height="wrap_content" android:layout_width="wrap_content" android:marqueerepeatlimit="marquee_forever" android:scrollhorizontally="true" android:singleline="true" android:text="Single-line text view that scrolls automatically if the text is too long to fit in the widget"></textview>


我们需要安装


TextView tv=/TextView/findViewById/R.id.textview1/;
tv.setSelected/true/;


最终导致我工作

小明明

赞同来自:

我的决定工作:


<textview android:ellipsize="marquee" android:gravity="left" android:id="@+id/titolotxt" android:layout_height="..." android:layout_width="..." android:marqueerepeatlimit="marquee_forever" android:singleline="true" android:text="@string/titolo"></textview>



TextView

必须设置以下内容:
例如,
textView.setSelected/true/;

根据V的代码。
onCreate

.

龙天

赞同来自:

// this TextView will marquee because it is selected
TextView marqueeText1 = /TextView/ findViewById/R.id.marquee_text_1/;
marqueeText1.setSelected/true/;

<textview android:ellipsize="marquee" android:id="@+id/marquee_text_1" android:layout_height="wrap_content" android:layout_width="fill_parent" android:marqueerepeatlimit="marquee_forever" android:scrollhorizontally="true" android:singleline="true" android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit." android:textsize="24sp"></textview>

郭文康

赞同来自:

有时 invalidate 只要你打电话,就无法工作 invalidate 在主流中如下:


handler.post/new Runnable// {

@Override
public void run// {
yourView.invalidate//;
}
}/;

要回复问题请先登录注册