IOS Swift5.5的通知写法

新建一个Common.swift 文件,把默认的全部删掉。里面书写通知的名字:

import UIKit
let kWBAppearanceTintColor: UIColor = UIColor.orange
extension NSNotification.Name {static let ktypeChangeNotification = NSNotification.Name("typeChangeNotification")
}

仿照上面写,见名知意。通知一般前面加k,后面加Notification,不要乱起名字。

二。在你需要发送通知的地方书写:

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {let type = typeMs[indexPath.row]NotificationCenter.default.post(name: .ktypeChangeNotification, object: type, userInfo: nil)//        NotificationCenter.default.post(name: .ktypeChangeNotification, object: type)}

name 直接通过点语法,直接去点你Common文件的全局通知名称。object是你对外传输的参数,userInfo可以为空。

三,在其他控制器去接收通知,或者叫注册通知,重点掌握swift的#selector参数传参的写法。

override func viewDidLoad() {super.viewDidLoad()NotificationCenter.default.addObserver(self, selector: #selector(typeChange(noti:)), name: .ktypeChangeNotification, object: nil)}@objc func typeChange(noti: Notification) -> Void {debugPrint(noti)}

还有函数一般加@objc,为了更加严谨。

四。销毁通知

在你注册通知的控制器务必写销毁通知,不然有问题.

 deinit{//注销通知NotificationCenter.default.removeObserver(self, name: .ktypeChangeNotification, object: nil)}

在deinit函数里面写,继续使用点语法,把通知的名字拿到。

IOS Swift5.5的通知写法相关推荐

  1. iOS开发之本地通知UILocalNotification

    本地通知是UILocalNotification的实例,主要有三类属性: scheduled time:时间周期,用来指定iOS系统发送通知的日期和时间: notification type:通知类型 ...

  2. IOS中的枚举的写法...

    IOS中的枚举的写法- oc中 typedef enum { XMGTopicTypeAll = 1, XMGTopicTypePicture = 10, XMGTopicTypeWord = 29, ...

  3. 苹果iOS 16将改进通知 添加新的健康追踪功能

    4月11日消息,据国外媒体报道,代号为"Sydney"的iOS16将在6月的WWDC上推出预览版,分析师称,总体来说不会有太大的设计改变,主要将对通知和新健康追踪功能进行改进. 据 ...

  4. ios swift5 时间戳 时间差 日期格式 Date 日期字符串

    1.日期Date转日期字符串(格式) @objc func chooseDate(_ datePicker:UIDatePicker) {let chooseDate = datePicker.dat ...

  5. ios swift5 UIImage和Data互转 通过url获取本地图片

    文章目录 1.示例 1.1 从打印结果可以看出,data转成image前count为206752字节,image.pngData()为1260163字节,image.jpegData(compress ...

  6. iOS swift5 图片压缩 UIImage

    参考博客:swift 图片压缩 // // UIImage_extension.swift // F // // Created by mac on 2022/3/30. //enum ImageCo ...

  7. ios swift5 Range转NSRange

    extension String {/// range转换为NSRangefunc nsRange(from range: Range<String.Index>) -> NSRan ...

  8. 剪切粘贴时总是上次的内容_如何关闭 iOS 14 的粘贴通知

    饿了么 6-20 元红包 快快领取 苹果在 iOS 14 上推出多项关于隐私保护和提醒的功能,其中就包括 App 读取粘贴板提醒,比如下面这样: 很多朋友觉得这个提醒很多余,希望能够想办法去掉.理论上 ...

  9. gitlable iphone_使用gitlab ci构建IOS包并发送通知消息到企业微信

    在之前的文章中,我们介绍了使用gitlab ci构建Android包的方法.今天我们介绍使用gitlab ci如何构建IOS包,并且在打包成功或者失败时,如何将消息通知到企业微信. 如果对gitlab ...

最新文章

  1. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之材质了解Materials...
  2. java类加载器 架构 设计_类加载器(DexClassLoader)与插件化(动态加载)
  3. hihocoder A Game 区间dp
  4. java serializeutils_java序列化 SerializeUtil
  5. spring boot集成Quartz实现定时任务
  6. dlib+VS2019生成踩坑记录(Windows10环境)
  7. CentOS 7 下挂载新硬盘
  8. x200装linux驱动下载,佳能 ThinkPad X200 Tablet 驱动程序下载-更新佳能软件(平板电脑)...
  9. 百度文库内容复制文字解决方法
  10. UG塑胶模具设计培训,、胶模具成型工艺培训
  11. \t\t长痘痘(鼻尖,脸上等部位)的原因,应该怎么办?
  12. 网页打开速度慢,如何解决(修改DNS)
  13. link与@import自己的一些愚见
  14. D2D,让通信更简单!
  15. Windows下安装Nexus私服及更新索引
  16. OpenCV实战——多尺度FAST特征检测
  17. 评估Panzyga® (NewGam)三种不同剂量对慢性炎性脱髓鞘性多发性神经病变(CIDP)有效性和安全性的ProCID研究终局结果在2020年AAN呈报
  18. 请问你们学校有计算机教室吗英语翻译,我们家有电脑。英语翻译
  19. Emlog采集插件 刀网资源采集 一键显示资源1.1
  20. Linux(常用)命令篇

热门文章

  1. try except python3.7_python3.X中try/except
  2. uml图中的各种箭头_一次搞懂建模语言UML
  3. linux 开发组织模式,Linux内核发布模式与开发组织模式(1)
  4. 闲谈:我为什么热爱开源
  5. 招不到电子工程师,这锅谁来背?
  6. 经济寒冬?毕业生找不到好工作?来看看这个。
  7. mysql 32k 限制_ORA-22828 输入样式或替换參数超过了32k限制大小
  8. FPGA基础之LUT详解
  9. matlab text固定,[转载] 控制text位置-[Matlab]
  10. python+html语音人物交互_使用Python读取HTML表并与之交互