UITextView
クラスを作成しましたが、私はUITextView
を追加しています。 UITextView
が表示されますが、設定されたテキストは表示されません。UITextView
をタッチするとキーボードが表示されますが、テキストを書き始めると表示されません。ここで UITextViewにテキストが表示されない
UITextView
クラスです:
import UIKit
class TextAnnotation: UITextView {
override init(frame: CGRect, textContainer: NSTextContainer?) {
super.init(frame: frame, textContainer: textContainer)
self.text = "Text Field"
self.textColor = UIColor.blackColor()
self.userInteractionEnabled = true
self.editable = true
self.frame = CGRect(x: frame.origin.x, y: frame.origin.y, width: 200, height: 50)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
と、ここで私はタッチでUITextViewを追加するには、このクラスを呼び出しています方法です:私が表示されるように設定されたテキストを取得するにはどうすればよい
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
let textCenter = touches.first!.locationInView(view)
let textView = TextAnnotation(frame: CGRect(x: textCenter.x, y: textCenter.y, width: 200, height: 50), textContainer: NSTextContainer())
self.view.addSubview(textView)
}
と入力を開始したときになぜ表示されないのですか
textView.textの値をイニシャライザの外に設定するとどうなりますか?例えば、それをビューに追加する前に? –
あなたのイニシャライザが呼ばれていますか? –