Шаблон детской площадки Xcode 10.1 с одним представлением отображается как пустой черный вид - PullRequest
0 голосов
/ 08 декабря 2018

Я пытаюсь использовать игровую площадку Swift для создания прототипа простого кода для рисования.Начиная с одного вида IOS шаблона:

//: A UIKit based Playground for presenting user interface

import UIKit
import PlaygroundSupport

class MyViewController : UIViewController {
    override func loadView() {
        let view = UIView()
        view.backgroundColor = .white

        let label = UILabel()
        label.frame = CGRect(x: 150, y: 200, width: 200, height: 20)
        label.text = "Hello World!"
        label.textColor = .black

        view.addSubview(label)
        self.view = view
    }
}
// Present the view controller in the Live View window
PlaygroundPage.current.liveView = MyViewController()

Ничего противоречивым там.Я ожидаю, что он будет включать в себя все необходимое, чтобы получить строку "Hello World!"на экране (в противном случае, почему он находится в шаблоне?), но если я запускаю его, я вижу только черный прямоугольник.

После того, как вы заметили, что применения UIAnimation достаточно, чтобы представление правильно отображалосьЯ экспериментировал и обнаружил, что минимальное изменение в шаблоне, чтобы заставить его на самом деле что-то нарисовать, выглядит так:

// Present the view controller in the Live View window
let vc = MyViewController()
PlaygroundPage.current.liveView = vc
PlaygroundPage.current.needsIndefiniteExecution = true
vc.view.setNeedsDisplay()

Неправильно ли работает моя установка или не доставлен шаблон, чтобы произвести видимый вывод?

...