iOS 跑马灯之 TXScrollLabelView

作者: tingxins | 来源:发表于2016-11-20 23:24 被阅读7230次

前言

前段时间在开发一个广播的功能,网上也自己找了一些库,没有发现非常好用的,于是自己抽时间写了一个,在 Github 上发布一天收获六十多个 star,这里首先感谢大家在微博上的转发,使得 TXScrollLabelView 被更多需要的人知道,同时也非常感谢大家的吐槽及建议,使之诞生 TXScrollLabelView v1.1.1 版本,在此版本中针对大家在微博上的吐槽和建议进行改善,并优化。目前已支持 CocoaPods,后续会支持 Carthage。Github 地址: TXScrollLabelView

pod search TXScrollLabelView

-> TXScrollLabelView (1.1.1)
   The best way to show & display such as adverts,boardcast,OnSale e.g. with a
   customView.
   pod 'TXScrollLabelView', '~> 1.1.1'
   - Homepage: https://github.com/tingxins/TXScrollLabelView
   - Source:   https://github.com/tingxins/TXScrollLabelView.git
   - Versions: 1.1.1 [master repo]

TXScrollLabelView ?

TXScrollLabelView 是一个能够快速接入自定义标签滚动视图,可以做促销栏、头条栏、广播栏、广告栏等等展示,效果图:

scrolling-txscrolllabelview-jd.gif scrolling-txscrolllabelview-ka.gif scrollLabelView.gif

支持滚动类型

现在 TXScrollLabelView 支持4种滚动类型:

  • TXScrollLabelViewTypeLeftRight:从右向左单行滚动

  • TXScrollLabelViewTypeUpDown:从下至上多行滚动

  • TXScrollLabelViewTypeFlipRepeat:从下至上单行循环滚动

  • TXScrollLabelViewTypeFlipNoRepeat:从下至上单行依次滚动

前几天 GitHub 有人提出 scrollVelocity 针对相关类型失效问题,现在已经全部解决,以上四种类型 scrollVelocity 全部支持啦。后期会持续增加更多的功能,满足更多的需求。

如何接入 ?

目前支持两种方式集成 TXScrollLabelView:

  • 使用 cocoaPods

       platform :ios, '7.0'
       pod 'TXScrollLabelView'
    
  • 手动

    Clone 或者 DownloadZip 至本地,然后手动拖拽 TXScrollLabelView 文件夹中的文件至项目中,使用的时候 #import "TXScrollLabelView.h“ 即可。

如何使用 ?

直接上代码:

//1.获取滚动的内容
NSString *scrollTitle = @"xxxxxx";
//2.创建TXScrollLabelView
TXScrollLabelView *scrollLabelView = [TXScrollLabelView scrollWithTitle:scrollTitle type:0 velocity:3 options:UIViewAnimationOptionTransitionFlipFromTop];
//3.开始滚动
[scrollLabelView beginScrolling];

更多请详见Demo
https://github.com/tingxins/TXScrollLabelView/tree/master/TXScrollLabelViewDemo

相关文章

网友评论

  • HJD:可以支持部分文字变色吗
  • PowerBank_LZH:能改变某一块的颜色不,用数组的形式
  • 哆啦A梦_6800:老哥 我用Instruments检测 这个函数有内存泄露哦(NSArray *)getSeparatedLinesFromLabel {
  • 灰_太_狼:坑了,国际化项目不能用你这个。一开始没注意,看源码才发现你布局全是frame写的。为什么不用autolayout做。阿拉伯语下UI 一塌糊涂 0.0
    H_BL:不支持autolayout吗,那我还是自己写一个算了:sweat:
  • 勿忘初衷_2519:楼主 刷新UI 重新拉取新数据 此时 数组里的元素要更换 你貌似没有更新数据的方法
  • 6903d8f9b9fb:如何一开始就让文字出现,现在是隔了几秒后才文字?
  • 酷酷的开发匠:支持一条数据时不滚动的效果吗
  • 繁华三千_泰然独处:博主您好,我在想,如果在走马灯行走过程中,用户能对其互交,例如用户用手指去滑动时候,把动画停下来,在用户把手指拿开,或者在用户滑动后,再完全减速为0的时候,在再当前的偏移量开始动画,因为在启用了UIView的动画,所以偏移量是最大的,当用户把手指拿开,或者在用户滑动后,再完全减速为0的时候,获取不了滑动到当前的偏移量,博主可指点一二?
  • 沐风一月:pop出去,侧滑返回动画就出不来了
  • 羊羊羊的洋:刷新UI 重新拉取新数据 此时 数组里的元素要更换 你貌似没有更新数据的方法 难不成重新再初始化一次? 感觉你再设置一个 变量单独设置数据源 刷新UI
  • Nbm:楼主,怎么根据内容多少设置lable的宽度
  • 黑幕居士:希望后续版本能增加控制文字停留时间的方法,现在想让文字多显示一会只能改滚动速率,但是改了滚动速率后并不是让停留时间增加,而是滚得特别慢让停留时间看起来变久。
    tingxins:@黑幕居士 可以先到GitHub上提个issue哈
  • MasterY:我觉得灵活性一般,个人觉得只只初始化一次,然后给数组的set方法比较灵活。
    61cbb200688a:@hippo_baby 只能初始化的时候给赋值数组吗?没有单独的属性给赋值数组吗
    Ilovecoding822:那你倒是给个更好的啊
  • Lamet03:厉害了我的哥,不过代码研究起来有点看不懂了。小白一个:smiley: 。。我想在里面添加图片,项目需要,如何添加比较好呢
    Lamet03:@tingxins 你好,我想问个问题,我需要进行刷新数据,但是_scrollTitle赋值后,scrollArray里面只有一个数据了,这个该怎么处理
    Lamet03:@tingxins 好的,非常感谢,我先尝试吧,如果有新的版本记得@我,谢谢
    tingxins:@Lamet03 图片需要滚动?现在还不支持哈。如果仅仅是左右固定的图片或图标,直接布局即可。如果需要滚动也可以通过其中的-setupAttributeTitle:attributeTitle 方法尝试实现。后期版本也会针对此处进行完善:yum:
  • EternityLHY:使用了一下,感觉不错。就是在滚动的时候为什么不能点击呢,看了一下天猫,滚动的时候也是可以点击的,希望考虑一下。
    tingxins:@EternityLHY :+1:
    EternityLHY:@tingxins 点击回调是有 ,在滚动的时候 点击是不好用的 , 希望在 滚动ing 也可以点击。因为有的时候用户在滚动时点击没有反应,导致了用户体验很不好 ,甚至认为只是滚动 不能点击。 望采纳意见 让TXScrollLabelView更完善
    tingxins:@EternityLHY 有点击会调的,尝试更新pod最新版。如果有什么好点子,欢迎PR
  • Benyi_Peng:大兄弟,我提交了个PR。抽空看下呗
    tingxins:@Benyi_Peng 嗯,最近忙,抱歉哈:smile:
  • bd15fc24ecdb:楼主 这个不能传数组进去啊 点击事件这一块儿 。 不然就完美了
    tingxins:@哈哈大p孩 已更新
    哈哈大p孩:@tingxins 更新了吗楼主
    tingxins:@Chris_______wu 嗯嗯,最近准备更新一版,会增加数组传参:smile:
  • 5045a40d0a0c:楼主你好 请问上下滚动的你是怎么做到改变contenoffset不会一顿一顿的效果呢,我看你上下滚动是没有做动画的 TXScrollLabelViewTypeUpDown这个类型
    5045a40d0a0c:你这个1/30完美:joy:
    tingxins:@走马zm TXScrollLabelViewTypeUpDown 类型每滚动完一次,都会在Y方向上增加一定的偏移量,TXScrollLabelViewTypeLeftRight类型同理。当然,可能还有更好的方式哈:yum:
  • 叶先森_iOS_前端:大牛, 🐮 ,🐂 /
  • 多LV信源:如果是使用xib, 那拖取什么UI控件? label, scrollView, view?
    多LV信源:亲, 等待作者的回复哦
    多LV信源:@tingxins 用IB创建UI控件, 然后继承自TXScrollLabelView, 不可以吗? 我试了下, 分别拖取UILabel, UIScrollView, UIView, 都无法显示. 为什么呢? 你的TXScrollView也是继承自UIScrollView, 按理说, UIScrollView应该可以的啊?
    tingxins:@多LV信源 :+1::+1::+1:,现在还不支持可视化哈,考虑下一版本加上一些所见即所得的特性
  • dffa7ad5e16a:你这个是传字符串进去,不能穿数组哈。 这样的话,怎么解决从右到左,一句一句显示呢,第一句快结束了,显示第二句
    tingxins:@帅气昵称MT :cry: 恩,你可以先到 GitHub 上提一个 issue ,我会尽快改进的
    dffa7ad5e16a:@tingxins 主要是我需要点击不同的字符串 来跳转不同的控制器。。。
    tingxins:@帅气昵称MT 恩,如果仅从右至左显示,可以将所有字符串合成一个字符串直接传入即可。如果选择上下滚动,会自动分割字符串的。当然后期会增加多种传值方式 :sweat_smile:
  • 追逐你的影子:你好,请问我如果是想分句呢,就是一行显示一句话,要怎么样设置呢
    tingxins:@jianjianshu 选择 TXScrollLabelViewTypeFlipNoRepeat 类型即可,详见Demo 。如果还什么问题,可以到 GitHub 上提 issue :smile:
  • 生煎:厉害了我的哥
  • 856f318e4216:能不能添加上点击方法
    tingxins:@兰风 GitHub上已经添加了的,待会更新一下Cocoapods上的版本
  • Auditore:屌炸了
  • 会飞的盖伦:厉害了我的哥
  • 香橙柚子:厉害了,Word哥
  • 鲁鲁修:厉害
  • 五蕴盛:这个东西默认有点击事件吗?楼主
    五蕴盛:@tingxins 厉害了 我的哥 :sunglasses:
    tingxins:@五蕴盛 暂时还没有,今天晚点会再发一版
  • Link913:给力 :smirk:
  • 1effe140ac3c:我用cocoapods下载下载不下来啊
    tingxins:@None2970 在本地能不能pod search 到?如果不能更新一下这个目录下的索引:~/Library/Caches/CocoaPods/search_index.json,然后再尝试 pod search TXScrollLabelView
    1effe140ac3c:@tingxins 我配别的库都可以配的
    tingxins:@None2970
    1.尝试更新 cocoapods 版本。
    2.检查Podfile格式是否正确,可参考相关链接:https://guides.cocoapods.org/syntax/podfile.html#podfile
  • 凯文Kevin21:我在微博上也看到了, 是你写的吗? :joy: :joy: :joy:
    凯文Kevin21:@白金唱片 ?啥。
    177e2f7f8f57:@七秒小鱼人 好像是校友🌚
    tingxins:@七秒小鱼人 是的:smile:

本文标题:iOS 跑马灯之 TXScrollLabelView

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