我想创建一个iMessage应用程序而不使用故事板,最好是使用SwiftUI来查看.我正在跟踪Apple forum中的答案,但在iMessage窗口中看不到.
我把Info.plist
美元改成了:
<key>NSExtension</key>
<dict>
<key>NSExtensionPointIdentifier</key>
<string>com.apple.message-payload-provider</string>
<key>NSExtensionPrincipalClass</key>
<string>MessagesViewController.swift</string>
</dict>
一个简单的视图控制器:
import Messages
import SwiftUI
@objc (MessagesViewController)
class MessagesViewController: MSMessagesAppViewController {
override func viewDidLoad() {
super.viewDidLoad()
let child = UIHostingController(rootView: SwiftUIView())
child.view.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(child.view)
NSLayoutConstraint.activate([
child.view.topAnchor.constraint(equalTo: view.topAnchor, constant: 0.0),
child.view.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 0.0),
child.view.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0.0),
child.view.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: 0.0)
])
}
最后是一个简单的SwiftUI视图:
struct SwiftUIView: View {
var body: some View {
Text("Hello, Earth!")
}
}
到目前为止,没有任何运气.有谁知道我哪里出错了吗?