2014-06-06 16 views
5

Kiedy utworzę nową podklasę UITextView w Xcode 6 Beta, poniższy kod zostanie automatycznie dostarczony.Wyznaczony inicjator UITextView

import UIKit 

class TerminalView: UITextView { 

    init(frame: CGRect) { 
     super.init(frame: frame) 
     // Initialization code 
    } 
} 

Poprzedni kod (w całości dostarczony przez Xcode bez niczego usunięty) powoduje wystąpienie następującego błędu.

Must call a designated initializer of the superclass 'UITextView'

O ile mi wiadomo, wyznaczony dla wszystkich podklas UIView jest -initWithFrame: (lub w Swift, init(frame:). Jeśli jest to przypadek, dlaczego kod świadczone przez wyniku Xcode w błąd? dodałem żadnych nowych zmiennych instancji do klasy, więc nic innego nie musi być jeszcze zainicjowany

+1

Przesłany błąd. # 17472321 dla każdego, kto chciał sprawdzić status. – swiftYeti

+1

nadal nie jest naprawiony – nwales

Odpowiedz

7

wydaje się, że jedynym inicjator, który działa teraz jest.

super.init(frame: CGRect, textContainer: NSTextContainer?) 

która może być wywołana z

super.init(frame: CGRect.zero, textContainer: nil) 

Najprawdopodobniej jest to błąd w początkowej wersji beta i zostanie rozwiązany w najbliższych wydaniach beta.

+1

Nie zapomnij o [zgłoś] (http://bugreport.apple.com). –