Der UIViewController hat die richtige Größe (der Bildschirmhintergrund ist ohne Compose schwarz).
Mein Composable funktioniert in der Haupt-iOS-App einwandfrei (Es ist nur ein rotes Vollbild-Feld).
Ich bette die Ansicht „Verfassen“ wie folgt ein:
Code: Select all
class ShareViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
print("ShareViewController loaded")
view.backgroundColor = UIColor.systemBackground
let debugLabel = UILabel()
debugLabel.text = "UIKit Label: Debugging Layout"
debugLabel.textAlignment = .center
debugLabel.backgroundColor = UIColor.systemYellow
debugLabel.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(debugLabel)
NSLayoutConstraint.activate([
debugLabel.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
debugLabel.leadingAnchor.constraint(equalTo: view.leadingAnchor),
debugLabel.trailingAnchor.constraint(equalTo: view.trailingAnchor),
debugLabel.heightAnchor.constraint(equalToConstant: 150)
])
let composeVC = MainViewControllerKt.ShareExtensionViewController()
addChild(composeVC)
view.addSubview(composeVC.view)
composeVC.view.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
composeVC.view.topAnchor.constraint(equalTo: debugLabel.bottomAnchor),
composeVC.view.leadingAnchor.constraint(equalTo: view.leadingAnchor),
composeVC.view.trailingAnchor.constraint(equalTo: view.trailingAnchor),
composeVC.view.bottomAnchor.constraint(equalTo: view.bottomAnchor)
])
composeVC.didMove(toParent: self)
}
}