TextView中文字的跑马灯效果实现,以及focusable,focusableInTouchMode属性介绍

本文详细介绍了如何在Android中实现跑马灯效果,包括必要的属性设置:android:singleLine、android:ellipsize以及如何通过android:focusable和android:focusableInTouchMode使TextView获得焦点并启动跑动。

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

  1. 要实现跑马灯效果先要保证文字的长度大于一行,然后使用

    android:singleLind="true:
    
  2. 设置文字的形式:(跑马灯效果)

    android:ellipsize="marquee"
    
  3. 设置以上属性后,文字还不会自动跑起来,是因为TextView还没有获取焦点(即已存在跑马灯效果,当没有告诉TextView你要跑起来,而通知TextView跑起来的东西就是焦点),下面讲解两个属性就是解决这个问题的.

    android:focusableandroid:focusableInTouchMode跑马灯效果
    falsefalse
    falsetrue
    truefalse
    truetrue
  4. 两个属性的区别:

    1. android:focusable: 这个属性指定控件是否可以获取焦点,一般在触屏手机上是看不出来的,比如说在一些键盘机上,你进入音乐列表后,是不是有一行是高亮显示的,然后通过上下导航键可以移动那个高亮显示的条目,那就是条目获取了焦点; 但是在触屏机上没有上下导航键,也就是说无法移动焦点,那怎么办,这就是android:focusableInTouchMode的作用了.

    2. android:focusableInTouchMode:可以让焦点停留在自身的控件上,相当于把上面那个能让条目高亮显示的东西(焦点)一直停留在自身的控件上

  5. 注意:

    要使用 android:focusableInTouchMode 前必须要将 android:focusable 设置为true,因为 android:focusableInTouchMode 的作用是让焦点停留在自身控件,在那之前就必须控件先有焦点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值