Android TextView控件 之滚动文字效果

本文详细介绍了如何在Android中使用TextView控件实现文字滚动效果,包括XML文件的重新定义、Activity声明以及关键属性的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

随着对于 TextView控件的深入学习,结合别人的例子,自己做了一个滚动的TextView文字滚动的效果。


首先要对xml文件进行重新定义,把布局方式改成LinearLayout(也就是线性布局),自己写一个TextView控件

代码如下

<TextView
        android:id="@+id/textview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:layout_margin="10dp"
        android:background="#FFFFFF"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:padding="10dp"
        android:textColor="#000"
        android:textSize="20dp" />

  • android:elipsize: 如果文本长度大于TextView的显示长度,则隐藏那一部分,可赋值为:none(不隐藏)、start(隐藏开始)、middle(隐藏中间)、end(隐藏结束)、marquee(滚动效果)。
  • android:marqueRepeatLimit:设定需要重复动画的次数,传递一个int值,-1为无限循环。
  • android:focusable:是否允许获得焦点,传递一个bool值。
  • android:focusableInTouchMode:是否在获得焦点时对控件有联系,传递一个bool值。

然后再进Activity声明TextView

代码如下

TextView tv ;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_second);
		tv = (TextView)this.findViewById(R.id.textview);
		String str = "我将应鲁哈尼总统邀请对伊朗进行国事访问,就新形势下深化中伊关系及重大国际和地区问题深入交换意见,共同推动中伊关系迈上新台阶。";
		CharSequence charstr = Html.fromHtml(str);
		tv.setText(charstr);
		tv.setMovementMethod(LinkMovementMethod.getInstance());
	}
其中用到的CharSequence是一个接口,代表的是一个有序字符集合,对于一个抽象类或者是接口类,不能使用new来进行赋值,所以CharSequence charstr=,直接赋值就行了,后面调用的是Html的forHtml方法,把字符串传过去。

这样调用以上代码就能实现文字在TextView实现滚动效果了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值