/ / SWIFT iniviewcontroller - ios, swift, контролер iiviewcontroller, ініціалізація

SWIFT uiviewcontroller init - ios, швидкий, uiviewcontroller, ініціалізація

Я починаю використовувати швидкий.

з Мета-C коли я міг уникнути використання розкадровки, ініціалізація контролера перегляду була легкою. Я б просто створив UIViewController підклас, і я б поставив весь код ініціалізації всередину initWithNibName.

Тепер з розкадровки я втратив UIviewController підклас, я спробував додати init(прізвище) і init(кодер), але він виходить з ладу.

Це мій код

   //
//  SecondViewController.swift
//  tabTestWithSwift
//
//  Created by Marianna Ruggieri  on 02/11/14.
//  Copyright (c) 2014 Marianna Ruggieri. All rights reserved.
//

import UIKit

class FirstViewController: UIViewController {

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
println("init with nib")
super.init()
tabBarItem.title = "test"
}

required init(coder aDecoder: NSCoder) {
//fatalError("init(coder:) has not been implemented")
print("init coder")
super.init()
}

}

він виходить з ладу. це картина аварії: http://oi62.tinypic.com/10ogwsh.jpg

EDIT: Я не зробив нічого особливого TabBar проекту. і редагував контролер перегляду, як ви бачите в коді вище. Це воно!!!!

який є правильним способом ініціалізації a UIViewController якщо я "з використанням розкадровки", де я повинен поставити всі налаштування для мого контролера подання?

Відповіді:

6 за відповідь № 1

Ви створюєте цикл за допомогою виклику super.init() де ви повинні телефонувати init(nibName:nibBundleOrNil). Супер реалізація init() викликає ваш метод, який, в свою чергу, знову викликає супер.