Я хочу, чтобы иметь возможность обновлять мой uitextview, вызывая метод в моем представлении. С помощью этого кода я получаю сообщение об ошибке выполнения:Как обновить uitextview от внешнего источника.
Unexpectedly found nil while unwrapping an Optional value
Если я закомментируйте строку vw.updateTerm (...) он работает. В конечном счете, я хочу обновить uitextview с данными, обновленными из BLE и/или http-запроса. Любая помощь или направление будут оценены наиболее высоко.
Моя площадка скор 3 код выглядит следующим образом:
import UIKit
import PlaygroundSupport
public class TextViewController : UIViewController {
public var textView : UITextView!
override public func loadView() {
textView = UITextView()
textView.text = "Hello World!\nHello Playground!"
self.view = textView
}
func updateTerm(textToUpdate: String) {
self.textView.text.append(textToUpdate)
}
}
let vw = TextViewController()
vw.updateTerm(textToUpdate: "here you go")
PlaygroundPage.current.liveView = vw
Спасибо, ссылка помогла объяснить это лучше. Я использовал опцию Lazy, которая отлично работала для ошибки времени выполнения. Я добавил пару строк следующим образом, чтобы добавить в текстовое представление, он обновляется, но текст никогда не попадает на отображаемый текстовый вид. [code] print (vw.textView.text) vw.updateTerm (textToUpdate: "\ nhere you go 2") print (vw.textView.text) 'code' – user7376605
Добавлены эти строки кода. Похоже, что у меня есть 2 экземпляра textView, потому что на игровой площадке он добавляется к 1 экземпляру, но не к отображаемому. Мне нужно сделать что-то еще в моем классе? 'Vw.updateTerm (textToUpdate:" \ nhere you go ") print (vw.textView.text) vw.updateTerm (textToUpdate:" \ nhere you go 2 ") печать (vw.textView.text) ' – user7376605