连接在我ViewController
,我有两个UIImageView
其中有IBOutlet中连接到UI:创建IBOutlet中/ IBAction为与它的用户界面中自定义类
class ViewController: UIViewController {
@IBOutlet weak var img1: UIImageView!
@IBOutlet weak var img2: UIImageView!
...
现在,我想修改我的项目有一个专门的类ImageManager
处理图像。因此,ViewController
变成这样:
class ViewController: UIViewController {
var imgMgr: ImageManager!
override func viewDidLoad() {
super.viewDidLoad()
imgMgr = ImageManager()
}
}
我想ImageManager
类声明两个UIMageViews
的方式进行,同样在ViewController
并与UI的IBOutlet中连接,但看起来像它不能在这方面的工作方法:
class ImageManager : NSObject {
@IBOutlet weak var img1: UIImageView!
@IBOutlet weak var img2: UIImageView!
...
}
有没有什么办法让一个自定义类持有IBOutlet中& IBAction为它连接到Interface Builder的UI组件(而不是在ViewController
做)?
它不起作用,因为您打破了MVC模式。您正在创建一个不是“UIViewController”实例的控制器,这就是当您开始遇到问题时。你想让你的经理处理部分屏幕?那么它应该是一个子视图控制器。应该只是它处理数据?那么它应该是一个模型类,不应该拥有图像视图。 – Sulthan