zoukankan      html  css  js  c++  java
  • TextView的单行滚动效果

    首先,一个Textview可以很简单的实现,但是多个textview的实现方式就比较麻烦 .

    一个Textview实现滚动的条件:

    1、文本长度足够长

    2、ellipsize="marquee"

    3、focusable="true"  --- focusableInTouchMode="true" 

    当然,既然要滚动那就必须设置singleLine属性为true

        <TextView
            android:id="@+id/TextView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="marquee"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:singleLine="true"
            android:text="@string/text" />

    多个textview的滚动实现:

    我们在设置单个textview的时候会发现第三步设置了focusable,但是这个属性在对第二个textview设置的时候是无效的,即不能滚动了。所以我们需要自建一个textview

    新建一个类继承自textview,重写构造函数,加入isFocused函数返回为true

    public class MarqueeText extends TextView {
        public MarqueeText(Context context) {
            super(context);
        }
    
        public MarqueeText(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
    
        public MarqueeText(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        @Override
        public boolean isFocused() {
            return true;
        }
    }

    在使用textview中使用,甚至可以不再加入focusable="true"  --- focusableInTouchMode="true" 这两个属性

        <com.puzzle.lyxin.myapplication_textview.MarqueeText
            android:id="@+id/TextView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="marquee"
            android:singleLine="true"
            android:text="@string/text" />

    另外,这样默认的重复滚动次数好像是3次,如果要一直滚动可以加入属性到xml中

      android:marqueeRepeatLimit="marquee_forever"

  • 相关阅读:
    04.网站点击流数据分析项目_模块开发_数据仓库设计
    03.网站点击流数据分析项目_模块开发_数据预处理
    02.网站点击流数据分析项目_模块开发_数据采集
    15_sqoop数据导出
    14_sqoop数据导入
    13_sqoop数据迁移概述
    12_Azkaban案例实践5_Command操作Hive脚本任务
    11_Azkaban案例实践4_Command操作MapReduce
    10_Azkaban案例实践3_Command操作HDFS
    09_Azkaban案例实践2_Command多job工作流flow
  • 原文地址:https://www.cnblogs.com/lyxin/p/5756298.html
Copyright © 2011-2022 走看看