当前位置: 移动技术网 > 移动技术>移动开发>Android > Android 中TextView中跑马灯效果的实现方法

Android 中TextView中跑马灯效果的实现方法

2019年07月24日  | 移动技术网移动技术  | 我要评论

 条件:

1、android:ellipsize=”marquee”

2、textview必须单行显示,即内容必须超出textview大小

3、textview要获得焦点才能滚动

mtvtext.settext(“超过文本长度的数据");

mtvtext.setsingleline(true);设置单行显示

mtvtext.setellipsize(truncateat.marquee);设置跑马灯显示效果

textview.sethorizontallyscrolling(true); //让文字可以水平滑动

textview还可以设置跑马灯效果的滚动次数

android:marqueerepeatlimit="1"。1代表1次,-1代表无限循环。

java代码设置:

mtvtext.setmarqueerepeatlimit(-1);

.xml文件:

<textview
    android:id="@+id/tv_marquee"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/tv_marquee_text"
    android:textsize="25sp"
    android:focusable="true"
    android:ellipsize="marquee"
    android:marqueerepeatlimit="marquee_forever"
    android:focusableintouchmode="true"
    android:textcolor="@color/colorprimary" />

.java文件

public class lamprunactivity extends appcompatactivity {
  private textview tv_marguee;
  @override
  protected void oncreate(bundle savedinstancestate) {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.activity_lamp_run);
    intitextview();
  }
  public void intitextview(){
    tv_marguee= (textview) findviewbyid(r.id.tv_marquee);
    tv_marguee.setsingleline(true);//设置单行显示
    tv_marguee.sethorizontallyscrolling(true);//设置水平滚动效果
//    tv_marguee.setmarqueerepeatlimit(-1);//设置滚动次数,-1为无限滚动,1为滚动1次

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网