美文网首页Objective C开发iOS Developer
[iOS开发]文本滚动的实现,类似LED文字滚动效果

[iOS开发]文本滚动的实现,类似LED文字滚动效果

作者: 小多多 | 来源:发表于2016-09-12 16:01 被阅读468次

    前几天做新版本遇到需要文本滚动的需求,当时考虑到以后可能会扩展和需求变动,所以当时就参考了一下资料,自己封装了一个简单的,基本可以满足日常使用,这几天闲下来了就整理了一下,效果图如下


    演示.gif

    使用很简单,看一下.h文件

    #import <UIKit/UIKit.h>
    
    typedef NS_ENUM(NSInteger,MyTextScrollMode){
        MyTextScrollContinuous,     //连续的滚动
        MyTextScrollSpace,          //间隔的滚动
        MyTextScrollRound           //往复的滚动
    };
    
    typedef NS_ENUM(NSInteger,MyTextScrollDirection){
        MyTextScrollMoveLeft,       //向左滚动   
        MyTextScrollMoveRight       //向右滚动
    };
    
    @interface MyScrollTextView : UIView
    
    //滚动类型
    @property (nonatomic) MyTextScrollMode textScrollMode;
    //滚动方向
    @property (nonatomic) MyTextScrollDirection textScrollDirection;
    //字体颜色
    @property (nonatomic,strong) UIColor * textColor;
    //文字内容
    @property (nonatomic,strong) NSString * text;
    //字体大小
    @property (nonatomic,strong) UIFont * textFont;
    //滚动速度 不设置就默认
    @property (nonatomic)CGFloat speed;
    //连续滚动时两段之间间隔大小
    @property (nonatomic)CGFloat disance;
    
    //开始滚动
    - (void)startScroll;
    @end
    

    如演示图所示的,有三种模式可以设置,只有当文字长度超过ScrollTextView的宽度时,文字才会滚动,使用方法如下:

     //设置连续滚动
        self.ContinuousScrollTextView.textScrollMode = MyTextScrollContinuous;
        self.ContinuousScrollTextView.textScrollDirection = MyTextScrollMoveLeft;
        self.ContinuousScrollTextView.textColor = [UIColor orangeColor];
        self.ContinuousScrollTextView.textFont = [UIFont systemFontOfSize:17.f];
        self.ContinuousScrollTextView.text = @"我是连续的滚动测试测试测试测试测试测试";
    

    开始滚动调用方法:

    [self.ContinuousScrollTextView startScroll];
    

    具体的使用这里有一个小demo,有兴趣可以看一下
    点我进入
    大家觉得不错给个star,谢谢
    使用过程中有问题可以随时探讨,iOS小白,错误的地方还望见谅。

    相关文章

      网友评论

        本文标题:[iOS开发]文本滚动的实现,类似LED文字滚动效果

        本文链接:https://www.haomeiwen.com/subject/gwmpettx.html