Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Om du har en iOS-app och vill ta den till Windows kan AI-verktyg utföra det mesta av mappningsarbetet. Den här sidan innehåller viktiga begreppsöversättningar från UIKit/SwiftUI till WinUI 3. Använd de här tabellerna som kontext när du frågar din AI-agent – om du tillhandahåller exakta API-mappningar i förväg får du mycket mer exakta utdata än att be om en allmän konvertering.
Installera Plugin-programmet för WinUI-agenten först för att ge din agent korrekt WinUI 3-kunskap:
gh copilot plugin install winui@awesome-copilot
Konceptkartläggning
| iOS (UIKit/SwiftUI) | Motsvarande WinUI 3 | Notes |
|---|---|---|
UIViewController |
Page |
WinUI-sidor navigeras via Frame |
UINavigationController |
Frame + NavigationView |
Använda Frame.Navigate() för sidövergångar |
UITabBarController |
NavigationView (övre eller vänstra flikar) |
|
UITableView |
ListView |
Använda ObservableCollection<T> för databindning |
UICollectionView |
GridView |
|
UIAlertController |
ContentDialog |
Måste vara underordnad den aktuella XamlRoot |
UILabel |
TextBlock |
|
UITextField |
TextBox |
|
UIButton |
Button |
|
UIImageView |
Image |
|
UIStackView |
StackPanel |
Ange Orientation till Horizontal eller Vertical |
Auto Layout |
Grid / StackPanel / RelativePanel |
XAML-layouten är rad-/kolumnbaserad |
@State
/
@Binding (SwiftUI) |
INotifyPropertyChanged
/
ObservableProperty (CommunityToolkit.Mvvm) |
|
NSUserDefaults |
ApplicationData.Current.LocalSettings |
|
URLSession |
HttpClient |
Använd System.Net.Http.HttpClient |
NotificationCenter |
Händelser eller WeakReferenceMessenger (CommunityToolkit.Mvvm) |
|
DispatchQueue.main.async |
DispatcherQueue.TryEnqueue |
|
AppDelegate.applicationDidFinishLaunching |
App.OnLaunched |
|
SceneDelegate / windowScene |
MainWindow / AppWindow |
|
FileManager |
StorageFolder / StorageFile |
|
UserNotifications |
AppNotificationManager (Microsoft.Windows.AppNotifications) |
Startprompt
Använd den här uppmaningen för att ge AI-agenten den kontext den behöver innan du påbörjar en migrering:
I'm migrating an iOS app to WinUI 3 using the Windows App SDK.
The app is written in [Swift / Objective-C] using [UIKit / SwiftUI].
Apply these mappings:
- UIViewController → Page, navigated via Frame
- UINavigationController → Frame + NavigationView
- UITableView → ListView with ObservableCollection<T>
- UIAlertController → ContentDialog (parented to XamlRoot)
- NSUserDefaults → ApplicationData.Current.LocalSettings
- URLSession → System.Net.Http.HttpClient
- DispatchQueue.main.async → DispatcherQueue.TryEnqueue
- @State / @Binding → INotifyPropertyChanged via CommunityToolkit.Mvvm
Use Microsoft.UI.Xaml.* namespaces throughout — never Windows.UI.Xaml.*.
Generate C# — not Swift.
Det som inte mappas direkt
Vissa iOS-begrepp har inte någon direkt WinUI-motsvarighet:
-
In-app-köp: Använd Microsoft Store handels-API:er via
Windows.Services.Store - Push-meddelanden (APN): Använd Windows Push Notification Services (WNS)
- HealthKit/ARKit/CoreML: Windows har relaterade teknikområden – Windows ML, Windows Mixed Reality och Windows Sensorer – men dessa är inte direkta motsvarigheter och kräver plattformsspecifik implementering
- Appklipp: Ingen direkt motsvarighet – överväg webb-till-app-länkning
Relaterat innehåll
Windows developer