我对Marquee不感兴趣,因为在Marquee中你无法控制选框的速度.我试图为textview设置动画,但是Parent视图在末尾剪切文本,即使包含textviews的所有父布局和视图组都设置了两个标志clipchildren = false,clipToPadding = false.
我错过了什么或者有更好的解决方法吗?
xml看起来像
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginBottom="66dp"
android:maxLines="1"
android:singleLine="true"
android:textColor="#585858"
android:textSize="32sp" >
</TextView>
Run Code Online (Sandbox Code Playgroud)
和代码片段看起来像
TextView textView2 = (TextView)findViewById( R.id.textview1 );
textView2.startAnimation((Animation)AnimationUtils.loadAnimation(this, R.anim.translate));
Run Code Online (Sandbox Code Playgroud)
我想你可以使用翻译动画.像这样的东西
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="5000"
android:fromXDelta="100"
android:interpolator="@android:anim/linear_interpolator"
android:repeatCount="infinite"
android:repeatMode="restart"
android:toXDelta="-100" />
Run Code Online (Sandbox Code Playgroud)
并添加到您的textview中
textview.startAnimation((Animation)AnimationUtils.loadAnimation(Context,R.anim.scroll_animation));
Run Code Online (Sandbox Code Playgroud)
希望它可以帮到你.
只需将其添加到您的文本视图中即可
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:textSize="30dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Your_Text" />
Run Code Online (Sandbox Code Playgroud)
我相信这肯定会解决大量观众的问题。
问:以合理的速度水平无限地自动滚动单行长文本消息(使用 hard_coding 或来自 string.xml),但使用选框(至少尝试一次)。无剪裁
第 1 步:在 activity_main.xml 文件中:
<TextView
android:text="either hard coding or from string.xml"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:background="@color/colorPrimary"
android:textSize="18sp"
android:marqueeRepeatLimit="marquee_forever"
android:textColor="@android:color/background_light" />
Run Code Online (Sandbox Code Playgroud)
第 2 步:在 main_activity java 文件公共类 MainActivity 扩展 AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView = (TextView) findViewById(R.id.textView2);
textView.setEllipsize(TextUtils.TruncateAt.MARQUEE);
textView.setSelected(true);
textView.setSingleLine(true);
textView.setText("Oxfam says 8 men as rich as half the world. | Govt may set threshold for probe into deposits. | At least 32 dead after Turkish plane hits village.");}}
Run Code Online (Sandbox Code Playgroud)
//如果他已经输入了长输入,则可以删除最后一行
| 归档时间: |
|
| 查看次数: |
10975 次 |
| 最近记录: |