当前位置: 首页 > news >正文

做网站推广那家好网络运营维护的工作内容

做网站推广那家好,网络运营维护的工作内容,企业网站网页尺寸,网站dedecms数据库本节将通过纯代码进行封装自定义View控件#xff0c;以常用的设置页的item为例#xff0c;实现UI效果如下#xff1a; 1、创建SettingView继承自UIView import UIKitclass SettingView: UIView {} 2、重写 init() 和 required init?(coder: NSCoder) 方法 纯代码创建Set…本节将通过纯代码进行封装自定义View控件以常用的设置页的item为例实现UI效果如下 1、创建SettingView继承自UIView import UIKitclass SettingView: UIView {} 2、重写 init() 和 required init?(coder: NSCoder) 方法 纯代码创建SettingView会执行到init()而required init?(coder: NSCoder)则是用于可视化布局时所以两个方法都必须重写。 import UIKitclass SettingView: UIView {init() {super.init(frame: CGRect.zero)innerInit()}required init?(coder: NSCoder) {super.init(coder: coder)innerInit()}func innerInit() {}} 3、约束设置 当视图加入父视图时才能进行约束设置故需要重写 didMoveToSuperview()并在didMoveToSuperview()方法里面编写约束设置。 import UIKitclass SettingView: UIView {init() {super.init(frame: CGRect.zero)innerInit()}required init?(coder: NSCoder) {super.init(coder: coder)innerInit()}func innerInit() {}/// 当视图加入父视图时 / 当视图从父视图移除时调用override func didMoveToSuperview() {super.didMoveToSuperview()//添加约束} } 4、完整自定义view代码 // // SettingView.swift // SnapKitTest // // Created by jin on 2024/8/13. //import UIKitclass SettingView: UIView {init() {super.init(frame: CGRect.zero)innerInit()}required init?(coder: NSCoder) {super.init(coder: coder)innerInit()}func innerInit(){backgroundColor .whiteaddSubview(leftImgView)addSubview(rightImgView)addSubview(titleView)}/// 当视图加入父视图时 / 当视图从父视图移除时调用override func didMoveToSuperview() {super.didMoveToSuperview()//添加约束leftImgView.snp.makeConstraints { make inmake.left.equalToSuperview().offset(16)make.centerY.equalToSuperview()make.width.equalTo(20)make.height.equalTo(20)}titleView.snp.makeConstraints { make inmake.left.equalTo(leftImgView.snp.right).offset(16)make.centerY.equalToSuperview()}rightImgView.snp.makeConstraints { make inmake.right.equalToSuperview().offset(-16)make.centerY.equalToSuperview()make.width.equalTo(20)make.height.equalTo(20)}}///左侧图标lazy var leftImgView: UIImageView {let imageView UIImageView()imageView.image UIImage(named: Setting)return imageView}()///右侧图标lazy var rightImgView: UIImageView {let imageView UIImageView()imageView.image UIImage(named: Arrow)return imageView}()///标题lazy var titleView: UILabel {let textView UILabel()textView.text 标题return textView}() }5、使用自定义View view.addSubview(settingView)//添加约束只有添加当前控件内部的约束在控件内部就添加了 settingView.snp.makeConstraints { make inmake.top.equalTo(view.safeAreaLayoutGuide.snp.top)make.width.equalToSuperview()make.height.equalTo(55) }lazy var settingView: SettingView {let view SettingView()view.titleView.text 设置view.leftImgView.image UIImage(named: Setting)return view }() 6、设置View点击事件 objc func onSettingClick(recognizer:UITapGestureRecognizer) {print(onSettingClick) }lazy var settingView: SettingView {let view SettingView()view.titleView.text 设置view.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(onSettingClick(recognizer:))))return view }() 7、使用自定义View的完整代码 // // SettingController.swift // SnapKitTest // // Created by jin on 2024/8/13. //import UIKitclass SettingController: UIViewController {override func viewDidLoad() {super.viewDidLoad()view.backgroundColor .systemGroupedBackgroundtitle 设置界面view.addSubview(settingView)view.addSubview(collectView)//添加约束只有添加当前控件内部的约束在控件内部就添加了settingView.snp.makeConstraints { make inmake.top.equalTo(view.safeAreaLayoutGuide.snp.top)make.width.equalToSuperview()make.height.equalTo(55)}collectView.snp.makeConstraints { make inmake.top.equalTo(settingView.snp.bottom).offset(1)make.width.equalToSuperview()make.height.equalTo(55)}}objc func onSettingClick(recognizer:UITapGestureRecognizer) {print(onSettingClick)}objc func onCollectClick(recognizer:UITapGestureRecognizer) {print(onCollectClick)}lazy var settingView: SettingView {let view SettingView()view.titleView.text 设置view.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(onSettingClick(recognizer:))))return view}()lazy var collectView: SettingView {let view SettingView()view.titleView.text 收藏view.leftImgView.image UIImage(named: Setting)view.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(onCollectClick(recognizer:))))return view}()}至此一个简单的纯代码封装自定义View控件便实现了。
http://www.dnsts.com.cn/news/139833.html

相关文章:

  • 平凉网站开发学校网站制作公司
  • 教育门户网站建设长春做网站设计
  • php网站开发招聘需求标签云小工具 wordpress nofollow
  • 济南 网站建设襄樊seo
  • 专注赣州网站建设网站制作完成之后
  • 酒店类网站建设方案书wordpress配置文件如何修改
  • 优秀个人网站欣赏天津网站建设技术托管
  • 汕头企业网站面包机做面包网站
  • 企业支付的网站开发费如何入帐如何seo网站挣钱
  • 杭州网站网络 科技公司wordpress是什么程序
  • 网站开发的微端wordpress布谷鸟主题
  • 深圳网站制作问wordpress 锚点 插件
  • 怎样设计手机网站建设建筑工程网求职
  • 广东seo网站设计价格高端网站建设磐石网络好
  • 网站建设和网站设计区别订单拆单在电商网站建设
  • 怎样做移动端网站电子商务网站建设答案
  • 如何搭建一个论坛网站erp企业管理系统手机版
  • 石家庄网站建设系统自动成交型网站建设
  • 网站备案号格式说明书工信部网站报备
  • 柯桥网站建设自己做网站不想买空间 自己电脑可以做服务器吗?
  • 青岛做企业网站网站开发怎么样
  • 西宁企业网站建设开发seo引擎
  • 苏州网站公司举例说明网络营销的方法
  • 中国免费域名申请网站河北网站建设大全
  • 互联网站平台有哪些拆分盘的网站开发费用
  • 郑州建网站msgg软文经典案例
  • 网站可视区最多可以做多大中国兼职设计师网
  • 怎么弄一个自己的网站绵阳网站建设哪家好
  • 做网站保证效果登录四川省住房和城乡建设厅官网
  • 网站排名是什么意思园区门户网站建设方案