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代码部分还未验证。

  • 相关阅读:
    swift 对于NSDate日期获取年月日及其他操作
    Swift 的 NSDate 初学者指南
    swift之Mac中NSSlider的使用
    oc之mac中自定义NSSlider
    oc及swift之mac中NSPopUpButton
    swift之NSComboBox
    oc之NSComboBox输入字符时自动打开下拉菜单并匹配
    swift之Mac中NSScrollView的用法即滚动条隐藏和禁止滚动
    iOS 设置图片的透明度
    iOS 对象数组生成jsonarray
  • 原文地址:https://www.cnblogs.com/xiao-xu/p/3210639.html
Copyright © 2011-2022 走看看