如何在 iOS Swift 3 中创建扩展文件并在 View Controller 中调用它?
How to create extension file and call it in View Controller in iOS Swift 3?
我制作了这样的扩展文件:
import Foundation
import Swift
import UIKit
extension UIButton{
func sayHello() {
print("Hello bro...")
}
}
然后像这样在视图控制器中调用 sayHello 方法:
override func viewDidLoad() {
super.viewDidLoad()
sayHello()
}
但是显示这个错误:
我认为这个问题是由于在视图控制器中导入扩展文件造成的。
请帮助我。
谢谢。
使用extension UIViewController
不使用UIButton
下面的代码扩展了 UIButton 所以
someButton.sayHello() 有效
extension UIButton {
func sayHello() {
print("Hello bro...")
}
}
如果您想在 viewDidLoad()
中使用 UIViewController 扩展 UIViewController 而不是 UIButton
extension UIViewController {
func sayHello() {
print("Hello bro...")
}
}
它适用于 'viewDidLoad'
这是调用警报的一些示例扩展
例如)
extension UIViewController {
func alert(title: String, message: String) {
let alertController = UIAlertController(title: title, message: message, preferredStyle: .alert)
alertController.view.tintColor = .black
let someAction = UIAlertAction(title: "Some", style: .default, handler: nil)
//let alertController.addAction(someAction)
alertController.addAction(someAction)
self.present(alertController, animated: true, completion: nil)
}
}
你的实现是错误的。您正在创建 UIButton 的扩展并在 UIViewController
.
上调用方法
extension UIViewController {
func sayHello() {
print("Hello bro...")
}
}
如果要创建 UIButton
扩展程序
extension UIButton {
func sayHello() {
print("Hello bro...")
}
}
然后您需要在 UIButton
上调用它,如下所示
let button = UIButton()
button.sayHello()
我制作了这样的扩展文件:
import Foundation
import Swift
import UIKit
extension UIButton{
func sayHello() {
print("Hello bro...")
}
}
然后像这样在视图控制器中调用 sayHello 方法:
override func viewDidLoad() {
super.viewDidLoad()
sayHello()
}
但是显示这个错误:
我认为这个问题是由于在视图控制器中导入扩展文件造成的。
请帮助我。
谢谢。
使用extension UIViewController
不使用UIButton
下面的代码扩展了 UIButton 所以
someButton.sayHello() 有效
extension UIButton {
func sayHello() {
print("Hello bro...")
}
}
如果您想在 viewDidLoad()
中使用 UIViewController 扩展 UIViewController 而不是 UIButton
extension UIViewController {
func sayHello() {
print("Hello bro...")
}
}
它适用于 'viewDidLoad'
这是调用警报的一些示例扩展
例如)
extension UIViewController {
func alert(title: String, message: String) {
let alertController = UIAlertController(title: title, message: message, preferredStyle: .alert)
alertController.view.tintColor = .black
let someAction = UIAlertAction(title: "Some", style: .default, handler: nil)
//let alertController.addAction(someAction)
alertController.addAction(someAction)
self.present(alertController, animated: true, completion: nil)
}
}
你的实现是错误的。您正在创建 UIButton 的扩展并在 UIViewController
.
extension UIViewController {
func sayHello() {
print("Hello bro...")
}
}
如果要创建 UIButton
扩展程序
extension UIButton {
func sayHello() {
print("Hello bro...")
}
}
然后您需要在 UIButton
上调用它,如下所示
let button = UIButton()
button.sayHello()