安卓日记 设置TextView走马灯效果

有两种方法实现走马灯效果

第一种是在XML中设置

<TextView
            android:id="@+id/tv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="marquee"//这里设置为走马灯,必须
            android:marqueeRepeatLimit="marquee_forever"//循环无限次
            android:singleLine="true"//设置单行,必须
            android:scrollHorizontally="true"//横向滚动,必须
            android:maxEms="10"
            android:text="很长很长很长很长很长很长很长很长很长很长很长很长"/>

同时要在代码中设置

TextView textView = findViewById(R.id.tv);
textView.setSelected(true);

第二种是直接在代码中设置


TextView t = new TextView(this);
t.setText("很长很长很长很长很长很长很长很长很长很长很长很长");
t.setTextColor(Color.parseColor("#000000"));
//设定为WRAP_CONTENT 否则setMaxEms无效
LayoutParams layoutParams =  new LayoutParams(LayoutParams.WRAP_CONTENT,
                LayoutParams.WRAP_CONTENT);
t.setLayoutParams(layoutParams);
t.setMaxEms(10);
t.setSingleLine(true); //单行,必须
t.setEllipsize(TextUtils.TruncateAt.MARQUEE);//设置为走马灯,必须
t.setMarqueeRepeatLimit(-1);//无限循环,如设置1则一次
t.setHorizontallyScrolling(true);//横向滚动,必须
t.setSelected(true);//必须
layout.addView(t);//加载到布局

android:singleLine=”true”

实际上Android Studio 在设置单行的时候会报提示已经过时,暂时没有找到替代方法,不过设置的话依然能达到效果

这里只有文字超出设定的ems或者一行无法显示的情况下才会有效果,可以通过自定义View实现

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值