У меня есть контроллер вида с функцией «CV» в нем, которая конструирует содержимое просмотров. функция CV имеет обработчик завершения, который возвращает itselve в качестве переменной V. То, что я бы сейчас хочу сделать, когда я создаю новый экземпляр этой точки зрения, которая показывает V следующим образом:Swift show view controller от обработчика завершения
func S0000 (VD0000: O0001) {
(self.storyboard!.instantiateViewControllerWithIdentifier("V0005") as! V0005).Cv (VD0000){ (V) -> Void in
NSOperationQueue.mainQueue().addOperationWithBlock {
self.presentViewController(V, animated: true, completion: nil)
}
}
}
Это возвращает ошибку что V == nil, который я не понимаю, почему. Я обнаружил, что если я пишу это так:
func S0000 (VD0000: O0001) {
let V = self.storyboard!.instantiateViewControllerWithIdentifier("V0005") as! V0005
self.showViewController(V, sender: self)
V.Cv (VD0000){ (V) -> Void in
NSOperationQueue.mainQueue().addOperationWithBlock {
}
}
}
, чем он работает, но это поражение цели, которая должна Onley настоящего V, когда его завершения О построении.
Как я могу это сделать?
Я не знаю, с чего начать: переменные и функции должны начинаться с прописной буквы '' vd0000, '' cv' и V' вместо '' VD0000', V' и 'Cv'. Имена в целом должны быть значимыми, не пронумерованными - не 'VD0000',' O0001', 'S0000',' V0005' - I 10000% гарантируют вам, что никто, кроме вашего, не сможет понять ваш код. – luk2302
Да, я знаю, я уладил это себе, поэтому я начал ошибаться и не мог справиться с этим, но плохо пытался. – Luis
Перепишите все. Вы не сможете справиться с этим беспорядком. – dasdom