Swift中Category的使用

Swift中Category的使用,第1张

概述在项目开发中,经常会遇到同一个控件被频繁的创建,可能他们之间只是某些属性值不同而已,这个时候我们可以使用工厂模式去创建这些控件,也可以使用Category,在这里我们介绍如何使用Category 例如:按钮UIButton被频繁创建好多次,这时我们可以创建一个Swift文件: UIButton+Category.Swift import UIKitextension UIButton { 在项目开发中,经常会遇到同一个控件被频繁的创建,可能他们之间只是某些属性值不同而已,这个时候我们可以使用工厂模式去创建这些控件,也可以使用category,在这里我们介绍如何使用category 例如:按钮UIbutton被频繁创建好多次,这时我们可以创建一个Swift文件: UIbutton+category.Swift
import UIKitextension UIbutton {    //把按钮直接不同属性的名字传进来,在这里我们传进来图片名字和标题 class func creatbutton(imagename:String,Title:String) -> UIbutton { let button = UIbutton() button.setimage(UIImage(named: imagename),forState: UIControlState.normal) button.setTitle(Title,forState: UIControlState.normal) button.TitleLabel?.Font = UIFont.systemFontOfSize(12) button.setTitlecolor(UIcolor.darkGraycolor(),forState: UIControlState.normal) button.TitleEdgeInsets = UIEdgeInsets(top: 0,left: 10,bottom: 0,right: 0) return button } }
在创建按钮的地方,本来要这么写
private lazy var button: UIbutton {    let btn = UIbutton()    btn.setimage(UIImage(named: "icon_button"),forState: UIControlState.normal)    btn.setTitle("进入",forState: UIControlState.normal)    btn.TitleLabel?.Font = UIFont.systemFontOfSize(12)    btn.setTitlecolor(UIcolor.darkGraycolor(),forState: UIControlState.normal)    btn.TitleEdgeInsets = UIEdgeInsets(top: 0,left: 10,bottom: 0,right: 0)    return btn}()
现在可以这么写
private lazy var button: UIbutton = UIbutton.creatbutton("icon_button",Title: "进入")
如果个别按钮需要额外加一些属性,可以这么写
private lazy var button: UIbutton {    let btn = UIbutton = UIbutton.creatbutton("icon_button",Title: "进入")    //红色按钮    btn.backgroundcolor = UIcolor.redcolor()    return btn}()
总结

以上是内存溢出为你收集整理的Swift中Category的使用全部内容,希望文章能够帮你解决Swift中Category的使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1077302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存