In my main view I have two containers that have an IBOutlet in view controller.
In both the containers I have a an image and a label as in the picture below.
I want to have an IBOutlet to change the image and label but when I drag it to the original view controller it doesn't allow it.
So in the viewcontroller.swift as I said I can access each container by clicking and dragging. Like this
@IBOutlet weak var containerview1: UIView!
@IBOutlet weak var containerview2: UIView!
But I am trying to access the image view and labels in the container, something like this:
@IBOutlet weak var containerview1: UIView!
@IBOutlet weak var containerview2: UIView!
@IBOutlet weak containerview1_ImageView: UIImageView!
@IBOutlet weak containerview2_ImageView!: UIImageView!
I understand that this is probably not the correct way to do it. I need to be able to change the image and label in both of the container views programmatically through viewcontroller.swift
.
Create two separate class for containers
import UIKit
class ContainerView1: UIView {
@IBOutlet var containerView1Label: UILabel!
@IBOutlet var containerView1ImageView: UIImageView!
}
class ContainerView2: UIView {
@IBOutlet var containerView2Label: UILabel!
@IBOutlet var containerView2ImageView: UIImageView!
}
In main viewController storyboard define those class
Now set the label and imageview outlet by dragging from storyboard
Now drag container outlets in main view controller and use
import UIKit
class ViewController: UIViewController {
@IBOutlet var containerView1: ContainerView1!
@IBOutlet var containerView2: ContainerView2!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// use like this both container elements
containerView1.containerView1Label.text = "Container view 1 lable"
//containerView1.containerView1ImageView.image = yourImage file
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With