国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS中類似微信紅點顯示功能

2019-10-21 18:49:43
字體:
來源:轉載
供稿:網友

設計思路:給UIView增加一個分類 所有的視圖都可以根據需要來進行紅點顯示

#import <UIKit/UIKit.h>@interface UIView (CHRRedDot)@property (readonly, nonatomic) CALayer * chr_redDotLayer;/** 紅點圓心的位置,與各個邊之間的距離。如果距離<=0,則忽略距離 */@property (nonatomic, assign) UIEdgeInsets chr_redDotEdgeInsets;/** 紅點的半徑,默認為4 */@property (nonatomic, assign) CGFloat chr_redDotRadius;/** 紅點的顏色,默認為0xFF5A5A */@property (nonatomic, strong) UIColor * chr_redDotColor;/** 紅點是否顯示 */@property (nonatomic, assign) BOOL chr_redDotShow;@end#pragma mark - method- (void)chr_updateRedDot {  CALayer *redDot = self.chr_redDotLayer;  if (self.chr_redDotShow) {    if (redDot == nil) {      redDot = [CALayer layer];      self.chr_redDotLayer = redDot;      [self.layer addSublayer:redDot];    }    redDot.backgroundColor = self.chr_redDotColor.CGColor;    [self chr_layoutRedDot];  } else {    [redDot removeFromSuperlayer];    self.chr_redDotLayer = nil;  }}- (void)chr_layoutRedDot {  CALayer *redDot = self.chr_redDotLayer;  if (redDot == nil) return;  CGFloat radius = self.chr_redDotRadius;  redDot.cornerRadius = radius;  UIEdgeInsets edgeInsets = self.chr_redDotEdgeInsets;  CGFloat originX = edgeInsets.right <= 0 ? edgeInsets.left - radius : self.bounds.size.width - edgeInsets.right + radius;  CGFloat originY = edgeInsets.bottom <= 0 ? edgeInsets.top - radius : self.bounds.size.height - edgeInsets.bottom + radius;  CGFloat length = radius * 2;  redDot.frame = CGRectMake(originX, originY, length, length);}

以上所述是小編給大家介紹的iOS中類似微信紅點顯示功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 思南县| 贞丰县| 洪泽县| 金溪县| 沙河市| 洛扎县| 石泉县| 金湖县| 太仓市| 东明县| 蕲春县| 新河县| 广平县| 合水县| 绵阳市| 夏河县| 江永县| 静海县| 中山市| 富裕县| 小金县| 饶河县| 桃江县| 民乐县| 淄博市| 西平县| 麻江县| 晋宁县| 自贡市| 沙田区| 大港区| 藁城市| 保山市| 姜堰市| 伊宁县| 嘉祥县| 正安县| 楚雄市| 聂荣县| 玛纳斯县| 齐齐哈尔市|