本文主要介绍 【当UILabel的内容超出其自身的宽度范围后,进行互动展示的效果】,我们先来看一下Demo的效果图。

实际实现起来并不十分繁杂,在这里,为了开发的效率,我们使用了一个已经封装好的UILabel控制类CBAutoScrollLabel:点击“阅读原文”下载。

在写代码之前,我们还有一个准备工作,在stroyBoard中,找到需要实现效果的viewController,并向需要展示滚动效果label的地方拖一个UIView空间,并将其大小确定好(范围和之前需要展示滚动效果的label相同),之后将这个UIView的Class填写为CBAutoScrollLabel,如下图:

如果是纯代码写的界面,同理操作即可。

下面是主要的代码示例:

在需要实现效果的controller中,将刚才拖好的UIView进行关联。

@property (weak, nonatomic) IBOutlet CBAutoScrollLabel *autoScrollLabel;

然后我们在viewDidLoad中

self.autoScrollLabel.text = @"测试label";

self.autoScrollLabel.layer.masksToBounds = YES;

self.autoScrollLabel.layer.cornerRadius = 4;

self.autoScrollLabel.textColor = kColorView;

self.autoScrollLabel.backgroundColor = [UIColor whiteColor];

self.autoScrollLabel.font = [UIFont systemFontOfSize:12];

// 开始和结束标签之间的距离

self.autoScrollLabel.labelSpacing = 30;

// 一秒的停顿之后再开始滚动

self.autoScrollLabel.pauseInterval = 1.7;

// 每秒像素

self.autoScrollLabel.scrollSpeed = 30;

// 不使用自动滚动时的中心文本

self.autoScrollLabel.textAlignment = NSTextAlignmentCenter;

self.autoScrollLabel.fadeLength = 12.f;

self.autoScrollLabel.scrollDirection = CBAutoScrollDirectionLeft;

[self.autoScrollLabel observeApplicationNotifications];

这样就基本完成了,如果有不同需求的效果可以自行进行调整。

 

实现当UILable的内容超出其范围后自动滚动效果的更多相关文章

  1. Html内容超出标记宽度后自动隐藏

    我们在显示长文本时,往往需要去在C#端去截取字符,但这绝对不是一个好方面,因为我们的长文本往往都是代HTML标记的,你一个载不好,就会出现乱码问题(出现半个HTML标记),而比较好的作法就是通过CSS ...

  2. css 文本超出容器长度后自动省略的方法!

    我们在给用户显示文本内容的时候,往往需要避免文本内容超出容器宽度,防止换行溢出,小弟在网上找了下发现网上的实现仅仅只是实现了用 ...省略了的功能! 而并没有获取光标提示的功能,所有小弟就结合网上的代 ...

  3. CSS------当内容超出div宽度后自动换行

    <div class="AllReceivers-normal" style="widht:100%;height:100%;word-wrap: break-wo ...

  4. js动态删除某一行,内容超出单元格后超出的部分用省略号代替

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <s ...

  5. CSS------当内容超出div宽度后自动换行和限制文字不超出div宽度和高度

    如图: 1.自动换行 </div> 2.限制宽高度 </div> (注意:如果div放在li中还需要加上display:inline-block属性)

  6. CSS3设置内容超过一定长度后自动折行

    在用编辑器保存的数据到数据库的时候经常是在我们的内容前后加一个P标签,但是出来之后是一行,有时候会超过边框的宽度,所以研究了如何折行,如下代码: <!DOCTYPE html> <h ...

  7. marquee标签实现页面内容的滚动效果

    页面的自动滚动效果,可由javascript来实现, 但是有一个html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用marquee ...

  8. html内容超出了div的宽度如何换行让内容自动换行

    在显示评论列表的时候因为有固定宽,但是显示的内容超出的了div的宽,在这种情况下我们需要将其换行,实现的css代码如下   在工作中评论内容测试遇到评论着的评论内容为:"dddddddddd ...

  9. html页面内容超出后显示水平滚动条的问题

    这个问题已经遇到好几次,解决起来也熟练了很多.   出现这种问题一般都是html或页面中的某一内部元素宽度超了. 下面总结我遇到的几种情况: 1.某一内部元素width设为100%,然而它还有bord ...

随机推荐

  1. Android 应用自动更新功能的代码

    由于Android项目开源所致,市面上出现了N多安卓软件市场.为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量.因此我们有必 ...

  2. Redisson使用起来很方便,但是需要redis环境支持eval命令

    Redisson使用起来很方便,但是需要redis环境支持eval命令,否则一切都是悲剧,比如me.结果还是要用RedisCommands去写一套.例子就如下,获得一个RLock锁对象,然后tryLo ...

  3. LINUX中的虚拟文件系统结构

    我的博客:www.while0.com 以下以2.6.32版本的内核源码为例: 虚拟文件系统与具体文件系统之间是几组操作函数的对应,包括file_operations,dentry_operation ...

  4. C++ CGI Helloword

    一 什么是CGI CGI(The Common Gateway Interface):通用网关接口,定义web服务器和客户脚本进行信息交互的一系列标准.  二 web浏览器 为了了解CGI的概念,让我 ...

  5. java web的一些特殊用法(一)

    1.查看jquery ajax请求的数据的具体格式 很多时候,我们需要查看到ajax返回时的具体格式才知道怎么去解析他.在最原始的ajax写法中,可以通过xmlhttp.responseText查看到 ...

  6. Log4net 写文件日志与数据库日志

    一.数据库日志表结构 CREATE TABLE [dbo].[WebLog_Msg]( [LogID] [int] IDENTITY(1,1) NOT NULL, [Date] [datetime]  ...

  7. FZU 2237 中位数 主席树 树上k大

    #include <cstdio> #include <cstring> #include <queue> #include <set> #includ ...

  8. HDU-1026 Ignatius and the Princess I(BFS) 带路径的广搜

      此题需要时间更少,控制时间很要,这个题目要多多看, Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others)    Me ...

  9. lua package.path的使用

    需要用lua写一个工具,c++调用lua,然后这个lua要require其他lua脚本,在主lua里面设置package.path,但一直都失败,甚至lua都无法编译通过. project_path ...

  10. C++之内部类(嵌套类)与外部类及友元

    本人能力.精力有限,所言所感都基于自身的实践和有限的阅读.查阅,如有错误,欢迎拍砖,敬请赐教——博客园:钱智慧. 先上代码: class Outer { public: Outer(){m_outer ...