iOS 热重载(storyboard/xib 控件可视化开发 )

本文探讨了iOS开发中的热重载技术,旨在提高UI布局调整的效率。通过介绍IBInspectable关键字和IB_DESIGNABLE/IBDesignable的使用,阐述如何实现Xcode中storyboard和xib控件的可视化即时更新。同时,讲解了drawRect方法在热重载中的作用,以及在代码编写时借助Injection实现的热重载方法。
摘要由CSDN通过智能技术生成

热重载的意义

写 UI 布局时,会花费大量时间,而往往改动一个属性就要重新编译运行看效果,编译所花费的时间是巨大的,这些耗时都是无意义的,所以如果 Xcode 可以立马刷新我们的 UI 代码,是很有意义的。而热重载就是一种解决方案

IBInspectable 关键字

将属性用 IBInspectable 关键字修饰可以让该属性在 xib/storyboard 中可见,具体功能实现只要重写 setter 方法即可
OC 版本:

@property (nonatomic, assign) IBInspectable CGFloat radius;
- (void)setRadius:(CGFloat)radius {
   
    self.layer.cornerRadius = radius;
    self.clipsToBounds = radius;
}

swift 版本:

@IBInspectable var radius: CGFloat = 0 {
   
    didSet {
   
        layer.cornerRadius = radius
        clipsToBounds = radius == 0 ? false : true
        }
}
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值