如何让选框TextView等待特定的时间,直到它开始水平滚动?因为当我打开一个活动时,它会直接开始滚动。所以你必须等到它回到起始位置才能读到它。
发布于 2016-10-18 03:52:46
在XML中,我简单地添加了TextView,如下所示:
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!, Hello World!, Hello World!, Hello World!, Hello World!, Hello World!, Hello World!, Hello World!"
android:ellipsize="marquee"
android:singleLine="true"
android:marqueeRepeatLimit="marquee_forever"
android:focusable="true"
android:focusableInTouchMode="true"
android:freezesText="true"
android:maxLines="1"
android:scrollbars="none" />然后在代码中(在Activity中,但可以在任何地方):
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.textView);
textView.setSingleLine(false);
textView.setMaxLines(1);
}
@Override
protected void onResume() {
super.onResume();
textView.postDelayed(new Runnable() {
@Override
public void run() {
textView.setSingleLine(true);
}
}, 3000);
}发布于 2016-10-24 19:16:42
正如前面提到的in this answer,为了激活文本视图选框,你必须添加以下内容:
tv.setSelected(true);当你想延迟启动字幕时,你必须把它放入run()中,如下所示
tv.postDelayed(new Runnable() {
@Override
public void run() {
tv.setSelected(true);
}
}, 1000);这会延迟它
发布于 2016-10-18 15:38:08
<TextView
android:id="@+id/testing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:singleLine="true"
android:text="Some veryyyyy long text with all the characters that cannot fit in screen, it so sad :( that I will not scroll"
android:layout_below="@id/toolbar"
/>然后,在activity中将using setSelection设置为true。我已经对它进行了测试,并且它工作正常
testing.postDelayed(new Runnable() {
@Override
public void run() {
testing.setMaxLines(1);
testing.setEllipsize(TextUtils.TruncateAt.MARQUEE);
testing.setMarqueeRepeatLimit(10000);
testing.setSelected(true);
}
}, 3000);https://stackoverflow.com/questions/40031490
复制相似问题