zoukankan      html  css  js  c++  java
  • Android中TextView的跑马灯效果

    TextView中有个ellipsize属性,作用是当文字过长时,该控件该如何显示,解释如下:
    1.android:ellipsize=”start”—–省略号显示在开头
    2.android:ellipsize=”end”——省略号显示在结尾
    3.android:ellipsize=”middle”—-省略号显示在中间
    4.android:ellipsize=”marquee”–以跑马灯的方式显示(动画横向移动)

    文字左右滚动的属性: 
    android:singleLine="true"  表示使用单行文字
    android:ellipsize="marquee"

    android:focusableInTouchMode="true"
    android:focusable="true" 设置焦点
    android:marqueeRepeatLimit="marquee_forever"设置走马灯滚动的次数,marquee_forever为无限滚动

    其他效果:

    android:scrollbars="vertical" <!--垂直滚动条-->
    android:singleLine="false" <!--实现多行-->
    android:maxLines="15" <!--最多不超过15行-->

    Java代码:

    android:ellipsize="marquee", android:singleLine="true"
    Java代码1:
    mTVText.setText("");
    mTVText.setSingleLine(true);
    mTVText.setEllipsize(TruncateAt.MARQUEE);
    PS: TextView.setHorizontallyScrolling(true); //让文字可以水平滑动

    Java代码2:

    tv.setEllipsize(TextUtils.TruncateAt.valueOf("END"));
    tv.setEllipsize(TextUtils.TruncateAt.valueOf("START"));
    tv.setEllipsize(TextUtils.TruncateAt.valueOf("MIDDLE"));
    tv.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
    最好再加一个约束tv.setSingleLine(true);
    不仅对于textview有此属性,对于editext也有,不过它不支持marquee

      以上代码中跑马灯效果在xml中添加上面的滚动属性可以实现,本人已经用过,Java代码部分还未验证。

  • 相关阅读:
    POJ 1182 食物链
    HDU 1385 Minimum Transport Cost
    HDU_2544 最短路
    HDU 2066 一个人的旅行
    poj3090
    poj3157
    poj3169
    poj3125
    poj3187
    VMware Workstation 8的简明使用教程
  • 原文地址:https://www.cnblogs.com/xiao-xu/p/3210639.html
Copyright © 2011-2022 走看看