Я пытаюсь обновить изображение UIimageview
с помощью метода внутри класса с вызовом viewDidLoad()
. Я пытаюсь изменить изображение на:Swift 3: Member Member не может быть использован для типов «View Controller»
MyIMage.image = UIImage(named: "image2")
но его дает мне ошибку:
Instance member cannot be used on type "view controller"
Где я буду неправильно?
Мой код:
import UIKit
class ViewController: UIViewController {
@IBOutlet var MyImage: UIImageView!
var MyStruct = ChangeImage()
struct ChangeImage {
private var _isChanged: Bool = false
mutating func Set_Change(val: Bool) {
if (val) {
MyImage.image = UIImage(named: "image2")
self._isChanged = true
} else {
MyImage.image = UIImage(named: "image1")
self.isChanged = false
}
}
func isChanged()-> Bool {
return self._isChanged
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
MyStruct.Set_Change(val: true)
print (MyStruct.isChanged())
}
}
Ваша основная проблема в том, что вы не понимаете разницу между классом и объектом (который является экземпляром класса). Вы пытаетесь использовать MyImage, который является классом, как если бы это был объект. Вам будет рекомендовано прочитать основные книги или учебные пособия по объектно-ориентированному программированию, прежде чем идти дальше, чтобы вы поняли основы, так как вы не получите нигде, если вы этого не сделаете. – Gruntcakes