bekommst ich eine IBOutlet in einer Klasse Main_Screen habe, die in einer Klasse ist verfügbar, zu einem Hauptviewcontroller angeschlossen, die einen Scroll hat, aber wenn ich versuche, es nulleine IBOutlet von einer anderen Klasse schnellen
Code in Aussicht zu bekommen gibt Controller
import UIKit
class ViewController: UIViewController , UIScrollViewDelegate {
@IBOutlet weak var scrollVieww: UIScrollView!
override func viewDidLoad() {
super.viewDidLoad()
self.scrollVieww.pagingEnabled = true
self.scrollVieww.delegate = self
let storyboard = UIStoryboard(name: "Main", bundle: nil)
if let vc = storyboard.instantiateViewControllerWithIdentifier("MainScreen") as? Main_Screen {
// imageview returns nil :(
let imageView = vc.avatarImageView
}
// Do any additional setup after loading the view, typically from a nib.
let V1 = self.storyboard?.instantiateViewControllerWithIdentifier("HomeScreen") as UIViewController!
//Add initialized view to main view and its scroll view and also set bounds
self.addChildViewController(V1)
self.scrollVieww.addSubview(V1.view)
V1.didMoveToParentViewController(self)
V1.view.frame = scrollVieww.bounds
//Initialize using Unique ID for the View
let V2 = self.storyboard?.instantiateViewControllerWithIdentifier("MainScreen") as UIViewController!
//Add initialized view to main view and its scroll view also set bounds
self.addChildViewController(V2)
self.scrollVieww.addSubview(V2.view)
V2.didMoveToParentViewController(self)
V2.view.frame = scrollVieww.bounds
//Create frame for the view and define its urigin point with respect to View 1
var V2Frame: CGRect = V2.view.frame
V2Frame.origin.x = self.view.frame.width
V2.view.frame = V2Frame
//The width is set here as we are dealing with Horizontal Scroll
//The Width is x3 as there are 3 sub views in all
self.scrollVieww.contentSize = CGSizeMake((self.view.frame.width) * 2, (self.view.frame.height))
}
Ich sehe nirgendwo, wo Sie irgendetwas mit 'vc' tun. Wolltest du es dem Scrollview hinzufügen? Wenn Sie später einen zweiten MainScreen zuweisen, (v2) wird es eine andere Instanz sein, so dass imageView nicht gesetzt wird und Sie nirgends auf 'main_screen' zugreifen. – Paulw11
Ich möchte eine UiScrollView-Delegate-Methode aufrufen und eine imageView animieren, was ich nicht kann in der Klasse Main_Screen @ Paulw11 –