本文主要介紹 【當UILabel的內容超出其自身的寬度範圍後,進行互動展現的效果】,咱們先來看一下Demo的效果圖:html
實際實現起來並不十分繁雜,在這裏,爲了開發的效率,咱們使用了一個已經封裝好的UILabel控制類CBAutoScrollLabel:點擊這裏下載或這裏下載git
在寫代碼以前,咱們還有一個準備工做,在stroyBoard中,找到須要實現效果的viewController,並向須要展現滾動效果label的地方拖一個UIView空間,並將其大小肯定好(範圍和以前須要展現滾動效果的label相同),以後將這個UIView的Class填寫爲CBAutoScrollLabel,以下圖:
若是是純代碼寫的界面,同理操做便可。github
下面是主要的代碼示例:
在須要實現效果的controller中,將剛纔拖好的UIView進行關聯iphone
@property (weak, nonatomic) IBOutlet CBAutoScrollLabel *autoScrollLabel;
而後咱們在viewDidLoad中字體
self.autoScrollLabel.text = @"正在爲17名兒童提供健康管理服務 您已經爲36名兒童家庭推送了55關愛信息"; 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];
這樣就基本完成了,若是有不一樣需求的效果能夠自行進行調整ui