Giorgi
12/08/2024, 8:58 AMGiorgi
12/08/2024, 8:58 AMimport UIKit
import SwiftUI
import ComposeApp
class CustomParentViewController: UIViewController {
override var prefersHomeIndicatorAutoHidden: Bool {
return true
}
}
struct ComposeView: UIViewControllerRepresentable {
func makeUIViewController(context: Context) -> UIViewController {
let composeViewController = MainViewControllerKt.MainViewController()
let parentViewController = CustomParentViewController()
parentViewController.addChild(composeViewController)
parentViewController.view.addSubview(composeViewController.view)
composeViewController.didMove(toParent: parentViewController)
composeViewController.view.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
composeViewController.view.topAnchor.constraint(equalTo: parentViewController.view.topAnchor),
composeViewController.view.leadingAnchor.constraint(equalTo: parentViewController.view.leadingAnchor),
composeViewController.view.trailingAnchor.constraint(equalTo: parentViewController.view.trailingAnchor),
composeViewController.view.bottomAnchor.constraint(equalTo: parentViewController.view.bottomAnchor)
])
return parentViewController
}
func updateUIViewController(_ uiViewController: UIViewController, context: Context) {}
}
struct ContentView: View {
var body: some View {
ComposeView()
.ignoresSafeArea(.keyboard) // Compose has own keyboard handler
.ignoresSafeArea(edges: .all)
}
}
Andrei Salavei
12/08/2024, 2:31 PM.ignoresSafeArea(.keyboard)you don't need this line, the next one does all you need.
Giorgi
12/08/2024, 5:26 PM