Как установить высоту представления таблицы в соответствии с размером содержимого в SwiftUI?

Мне нужно отключить прокрутку в tableView и увеличить высоту в соответствии с ее содержимым. ниже мой код для просмотра таблицы в swiftUI, пожалуйста, нарисуйте мне руководство

var body: some View {
        List{

         ForEach(testData){ data in
                    VStack(alignment: .leading){
                                   HStack{
                                    Image(data.name)
                                       .resizable()
                                       .frame(width: 50, height: 50, alignment: .leading)

                                    VStack(alignment: .leading){
                                        Text(data.name)
                                               .bold()
                                        Text(data.bio)
                                               .font(.subheadline)
                                       }
                                   }
                               }
            }
        }
        .offset(y:-60)
        .padding(8)
    }

1 ответ

Вы можете сделать это, удалив список и заменив его VStack. Затем вы должны использовать разделитель в конце каждого VStack элементов и добавить горизонтальный отступ, и это даст тот же эффект, что и список, но сделает его не прокручиваемым, и он будет регулировать высоту в зависимости от элементов.

VStack{
ForEach(testData){ data in
 VStack(alignment: .leading){
        HStack{
        Image(data.name)
            .resizable()
            .frame(width: 50, height: 50, alignment: .leading)

         VStack(alignment: .leading){
             Text(data.name)
                    .bold()
             Text(data.bio)
                    .font(.subheadline)
            }
        }
    }
 }
Divider()
.padding(.horizontal)
}
.offset(y:-60)
.padding(8)

}
Другие вопросы по тегам