Gemeinsame UI auf iOS und Desktop hosten
Dieselben Composables in jedes Target einbetten
Gemeinsame UI auf iOS und Desktop hosten ist eine kostenlose Kotlin Multiplatform Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Multiplatform Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Multiplatform Academy-Kurs umfasst insgesamt 4 Lektionen.
Dieselbe App, neue Hosts
Ihr gemeinsam genutztes App-Composable ist bereit. Nun benötigt jede Plattform einen kleinen Einstiegspunkt, der es einbindet. Der UI-Code selbst ändert sich nicht.
iOS bettet Compose in einen Controller ein
Unter iOS stellen Sie Ihr Composable über einen UIViewController bereit. Die Funktion ComposeUIViewController übergibt SwiftUI einen Controller, den es darstellen kann.
fun MainViewController() =
ComposeUIViewController { App() }Aus SwiftUI aufrufen
Aus SwiftUI betten Sie diesen Controller in einen UIViewControllerRepresentable ein, sodass Ihr Kotlin-Bildschirm zu einer gewöhnlichen SwiftUI-Ansicht wird.
struct ComposeView: UIViewControllerRepresentable {
func makeUIViewController(context: Context) -> UIViewController {
MainViewControllerKt.MainViewController()
}
}iOS rendert nativ
Im Hintergrund zeichnet Compose mithilfe von Skia auf eine iOS-Oberfläche. Dadurch fühlt sich Ihr gemeinsam genutzter Bildschirm nativ an und verwendet die Logik von Android nahtlos mit.
Desktop verwendet ein Fenster
Auf dem Desktop starten Sie dieselbe App in einem application-Fenster. Mit wenigen Kotlin-Zeilen erhalten Sie ein echtes Desktop-Programm.
fun main() = application {
Window(onCloseRequest = ::exitApplication) {
App()
}
}Desktop läuft auf der JVM
Das Desktop-Ziel wird für die JVM kompiliert und rendert ebenfalls mit Skia. Daher laufen dieselben Composables, die Sie für Smartphones geschrieben haben, auch unter macOS, Windows und Linux.
Ein Composable, drei Hosts
Android verwendet setContent, iOS einen View-Controller und der Desktop ein Fenster. Alle drei rufen exakt dieselbe gemeinsam genutzte App-Funktion auf.
Standardmäßig noch mehr gemeinsam nutzen
Da das Hosting der einzige plattformspezifische Teil ist, befindet sich fast alles, was Sie entwickeln, in commonMain. Die gemeinsam genutzte Oberfläche wächst dadurch erheblich.
Bei Bedarf pro Plattform anpassen
Sie können im gemeinsam genutzten Code weiterhin abhängig von der Plattform unterschiedliche Pfade wählen, etwa für die Fenstergröße oder sichere Bereiche, und so eine einzelne Codebasis beibehalten, die sich gut anpasst.
Die Benutzeroberfläche einmal testen
Gemeinsam genutzte Benutzeroberflächen bedeuten gemeinsam genutzte UI-Tests in commonTest. So überprüfen Sie das Verhalten nur einmal und können ihm auf jedem ausgelieferten Host vertrauen.
Drei Apps aus einer einzigen erstellen
Mit eingerichteten Hosts versorgt eine einzige Compose-Codebasis Ihre Android-, iOS- und Desktop-Releases und reduziert duplizierte UI-Arbeit erheblich. 🚢
Kurze Überprüfung
Wie hostet iOS ein gemeinsam genutztes Composable?
Zusammenfassung: Überall hosten
Sie haben dieselbe gemeinsam genutzte App unter iOS über einen View-Controller und auf dem Desktop über ein Fenster eingebunden. Eine Compose-Codebasis, drei ausgelieferte Plattformen. 🎯
Häufig gestellte Fragen
Ist die Lektion „Gemeinsame UI auf iOS und Desktop hosten“ kostenlos?
Ja — der vollständige Text von „Gemeinsame UI auf iOS und Desktop hosten“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Multiplatform Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Multiplatform Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Gemeinsame UI auf iOS und Desktop hosten“?
Dieselben Composables in jedes Target einbetten Du übst Kotlin Multiplatform Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Kotlin Multiplatform Academy zu starten?
Keine Vorkenntnisse erforderlich. Kotlin Multiplatform Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Gemeinsame UI auf iOS und Desktop hosten“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Kotlin Multiplatform Academy-Lektion Code schreiben und ausführen?
Ja. Jede Kotlin Multiplatform Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Compose Multiplatform aktivieren
- Layouts, Modifier und Theming
- Zustand und Rekombination in der gemeinsamen UI
- Gemeinsame UI auf iOS und Desktop hosten