गतिशील NavigationLink SwiftUI Xcode

0

सवाल

मेरे HomeView मैं 2 कार्ड. मैं दो नए पृष्ठों (AboutA और AboutB) करने के लिए जोड़ा जा करने के लिए प्रत्येक के लिए इस कार्ड. लेकिन अगर मैं इस पर क्लिक करें कार्ड मैं केवल पूर्वावलोकन के पहले पृष्ठ, क्योंकि मैं नहीं जानता कि कैसे करने के लिए सेट dynamics नेविगेशन के लिए प्रत्येक. इस में है मेरी HomeView:

ForEach(items) { item in
    NavigationLink(destination: AboutA()) {
    CardView(item: item)
}

के लिए मैं कार्ड बनाने के लिए "डेटा":

struct Item: Identifiable {
    var id = UUID()
    var title: String
    var text: String
    var image: String
}

अब मैं मदद की जरूरत है, क्या करने के लिए बदलने में HomeView, और क्या बदलने के लिए में "डेटा" पृष्ठ.

धन्यवाद ।

swift swiftui swiftui-navigationlink
2021-11-22 16:19:26
2
0

आप दो कार्ड है और आप को दिखाने के लिए अपने विवरण में एक और देखने के लिए, कि आप के बारे में कहते हैं. के रूप में उनकी प्रकृति के समान है, मुझे लगता है कि यह भी पृष्ठ के बारे में है, वास्तव में इसी तरह या यहां तक कि के बराबर है । शायद इस दृश्य के बारे में यह दोनों के लिए एक ही देखें, तो बेहतर बात करने के लिए है बनाने के लिए एक गतिशील दृश्य के बारे में :

struct Item: Identifiable {
    var id = UUID()
    var title: String
    var text: String
    var image: String
}

struct ContentView: View {
    @State
    var items : [Item] = [Item(title: "A", text: "test text", image: "test image"), Item(title: "B", text: "test text", image: "test image")]
    
    var body: some View {
        NavigationView {
            ForEach(items) { item in
                NavigationLink(destination: AboutView(item : item)) {
                    Text(item.text)
                }
            }
        }
    }
}

struct AboutView : View {
    var item : Item
    var body : some View {
        Text(item.title)
    }
}

तो AboutView एक ही संरचना है के लिए दोनों कार्ड है, लेकिन यह हो जाएगा के साथ भरा सही डेटा. आप निश्चित रूप से जोड़ सकते हैं कुछ नियंत्रण करने के लिए समझ में डायन कार्ड है, और संपादित करें कुछ में देखें.

2021-11-23 08:41:10
0

ठीक है, मैं मेरी समस्या का हल लिंक के साथ कार्ड के लिए नए पृष्ठों है, लेकिन मैं नई समस्या :)

struct HomeView: View {
@State var show = false
var body: some View {
    NavigationView {
        ScrollView {
            ScrollView(.horizontal, showsIndicators: false) {
                HStack{
                    ForEach(items) { item in
                        NavigationLink(destination: AboutH()) {
                            CardView(item: items[0])}
                            NavigationLink(destination: Parkovi()) {
                                CardView(item: items[1])}
                                NavigationLink(destination: Rijeke()) {
                                    CardView(item: items[2])
                            }
                        }
                        
                    }
                }

अब मैं अपने 3 कार्ड, कर रहे हैं कि पृष्ठों के लिए लिंक है, लेकिन मैं पेड़ में समय की पंक्ति में एक ही कार्ड :(

किसी भी मदद की? धन्यवाद ।

2021-11-25 00:10:01

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................