web-dev-qa-db-ja.com

Swiftui [BUG] NavigationViewとListがiPadシミュレータでのみ表示されない

あらゆる種類のiPadシミュレータの空白ページ

Apple開発者のWebサイトにアクセスして、以下のチュートリアルプロジェクトをダウンロードしてください:

https://developer.Apple.com/tutorials/swiftui/building-lists-and-navigation

これをiPadシミュレーターで実行すると、空白のページが表示されますが、コードはMac/iPhoneと私の実際のiPhoneデバイスのシミュレーターで正常に動作します。

これは間違いなくバグです。私はAppleに報告しました。この問題を言った私のようなPPLをここに投稿します。PLSはリセットシミュレータで時間を無駄にせず、コードをチェックし、ラップトップを再起動し、=まで待機しますAppleこれを修正します。

スクリーンショット

enter image description here

Apple SwiftUIチュートリアルプロジェクトのサンプルコード:

import SwiftUI

struct LandmarkList: View {
    var body: some View {
        NavigationView {
            List(landmarkData) { landmark in
                NavigationLink(destination: LandmarkDetail(landmark: landmark)) {
                    LandmarkRow(landmark: landmark)
                }
            }
            .navigationBarTitle(Text("Landmarks"))
        }
    }
}

struct LandmarkList_Previews: PreviewProvider {
    static var previews: some View {
        ForEach(["iPhone SE", "iPhone XS Max"], id: \.self) { deviceName in
            LandmarkList()
                .previewDevice(PreviewDevice(rawValue: deviceName))
                .previewDisplayName(deviceName)
        }
    }
}
4
Sky

私が最初にiPadで自分のアプリを見たとき、私も延期されました。しかし、Listのすべての画面を無駄にしないことが理にかなっていることに気付いたので、最初の項目をデフォルトで詳細ビューに表示します。

var body: some View {
            NavigationView {
                // Main view (by default shows on iPhone but not on iPad)
                VStack{
                    List {
                        ForEach(viewModel.arPictures,  id: \.date) { potd in
                            NavigationLink(destination: POTDDetailView(potd: potd)) {
                                Text(potd.title ?? "")
                            }
                        }
                    }
                    }.navigationBarTitle(Text("Last 8 days pictures"), displayMode: .inline)
                
                // Detail view (by default shows on iPad but not on iPhone)
                if (!viewModel.arPictures.isEmpty){
                        POTDDetailView(potd: viewModel.arPictures[0])
                }
                
            }
    }

enter image description here

0
MrAn3