Багатоколонний TableView в MacOS за допомогою SwiftUI


12

Я трохи експериментував із SWiftUI і, схоже, не знаходжу ніякої інформації про те, як використовувати SWiftUI для створення багато стовпчика TableView, як у NSTableView. Усі приклади, які мені вдалося знайти, показують єдиний стовпець даних. Документація в Apple навіть вказує, що структура списку SwiftUI призначена для відображення рядків даних в одному стовпчику. Це досить фундаментальна структура даних для додатків на MacOS, проте, як здається, про це ніде не згадується!

Чи може хтось пролити на це світло? Я припускаю, що це ще не готово, але все ж….


Що стосується заміни та зміни розміру стовпців, заголовків, сортування рядків, натиснувши кнопку сортування у заголовках тощо. Перегляди таблиць MacOS набагато складніші, ніж просто список.
Петро

1
Чому це питання було скасовано? SwiftUI для macOS жахливий ... всі роблять уроки для iOS!
Лупур

Я думаю, що наразі це ще потрібно використовувати NSViewRepresentable. Чи є у вас нова інформація?
Лупур

1
Ні, нової інформації немає. І ви маєте рацію щодо відсутності прикладів для MacOS - майже не існує.
Петро

Ви дізналися, як користуватися NSTableViewSwiftUI?
Лупур

Відповіді:


1

Ви можете створити HStack, а потім мати роздільник між двома VStacks, куди б ви розміщували різні стовпці даних. Це виглядатиме приблизно так:

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

А потім просто повторіть це, наскільки потрібно багато стовпців даних.


Ну так, але це буде виглядати і відчувати себе досить зламаним разом. Жодних заголовків стовпчиків чи розміщення стовпців, сортування тощо. Краще використовувати справжній на даний момент та сподіваюся, що після WWDC цього року буде доступне щось краще. Я був більше здивований цілковитою відсутністю навіть згадки про це - досить добре де-небудь насправді.
Петро
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.