国产探花免费观看_亚洲丰满少妇自慰呻吟_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開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昭平县| 永吉县| 淳安县| 闽侯县| 永嘉县| 汶川县| 太仓市| 渝北区| 长丰县| 环江| 闵行区| 泰州市| 吉安市| 白山市| 凤城市| 滦南县| 香格里拉县| 遂平县| 东辽县| 南投市| 柘荣县| 彝良县| 乌拉特后旗| 张掖市| 井研县| 饶阳县| 青田县| 平乐县| 陕西省| 南昌市| 金秀| 辰溪县| 姜堰市| 华阴市| 宜春市| 呈贡县| 获嘉县| 东安县| 鄢陵县| 崇明县| 磴口县|