ios - 我们如何在 Swift 4.0 的协议扩展中定义选择器方法
问题描述
我想运行一个计时器以在视图控制器上显示一条 toast 消息,但我收到错误:@objc 只能用于类成员、@objc 协议和类的具体扩展
@objc protocol Test: class {
var name: String { get }
func showToastMessage()
}
extension Test {
var timer: Timer {
return Timer.scheduledTimer(timeInterval: 3.0, target: self, selector: #selector(showToastMessage), userInfo: nil, repeats: false)
}
@objc func showToastMessage() {
}
}
解决方案
推荐阅读
- selenium - 我们如何在桌面 Safari 浏览器中处理 Windows 身份验证
- java - 如何在 bean 验证期间确定哪个参数导致 HttpMessageNotReadableException
- r - 如何同时播放两个同名的df
- javascript - 通过创建隐藏输入在 React 中复制文本
- laravel - 使用 Laravel 在本地机器上使用 Envoy
- reactjs - Recharts - 如何强制图表从 x=0 开始?
- python - Selenium“选择”类返回“不支持的定位器策略”错误
- nativescript - 我可以使用哪个 NativeScript 变体在 Windows 上为 iOS 和 Android 开发?
- node.js - 运行 nodejs 文件时出现警告消息
- python - 在 python 中使用 HTML 标签时如何避免 KeyError: 'border-collapse' 错误?