Multi Kolom TableViews di MacOS menggunakan SwiftUI


12

Saya telah bereksperimen sedikit dengan SWiftUI dan sepertinya tidak dapat menemukan informasi sama sekali tentang cara menggunakan SWiftUI untuk membuat TableView multi kolom seperti di NSTableView. Semua contoh yang berhasil saya temukan menunjukkan satu kolom data. Dokumentasi di Apple bahkan menentukan bahwa struktur Daftar SwiftUI adalah untuk tampilan kolom tunggal dari baris data. Ini adalah struktur data yang cukup mendasar untuk aplikasi di MacOS namun tampaknya tidak ada yang menyebutkannya di mana pun!

Adakah yang bisa menjelaskan hal ini? Saya kira itu belum siap tetapi masih ....


Bagaimana dengan bertukar dan mengubah ukuran kolom, tajuk, penyortiran baris dengan mengklik tombol urutkan di tajuk, dll. Tampilan tabel MacOS jauh lebih rumit dari sekadar daftar sederhana.
Peter

1
Mengapa pertanyaan ini tidak dipilih? SwiftUI untuk macOS mengerikan ... semua orang melakukan tutorial untuk iOS!
Lupurus

Saya pikir saat ini masih perlu digunakan NSViewRepresentable. Apakah Anda punya informasi baru?
Lupurus

1
Tidak, tidak ada informasi baru. Dan Anda benar tentang kurangnya contoh untuk MacOS - hampir tidak ada.
Peter

Apakah Anda mengetahui cara menggunakan NSTableViewdi SwiftUI?
Lupurus

Jawaban:


1

Anda bisa membuat HStack dan kemudian memiliki pembagi antara dua VStack di mana Anda akan meletakkan kolom data yang berbeda. Akan terlihat seperti ini:

List {
 HStack{
   VStack{
    //Column 1 Data
  }
   }
  Divider()
   VStack{
     //Column 2 Data
   }
}

Dan ulangi saja ini karena bagaimanapun banyak kolom data diperlukan.


Ya, tapi itu akan terlihat dan terasa sangat diretas bersama. Tidak ada tajuk kolom atau pertukaran kolom, penyortiran dll. Lebih baik menggunakan yang asli untuk saat ini dan berharap ada sesuatu yang lebih baik tersedia setelah WWDC tahun ini. Saya lebih terkejut dengan kurangnya total bahkan menyebutkannya - cukup baik di mana saja sebenarnya.
Peter
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.