Удалите лишние разделители под списком в SwiftUI

Попробуйте следующее:

import re

def natural_sort(l): 
    convert = lambda text: int(text) if text.isdigit() else text.lower() 
    alphanum_key = lambda key: [ convert(c) for c in re.split('([0-9]+)', key) ] 
    return sorted(l, key = alphanum_key)

Выход:

['elm0', 'elm1', 'Elm2', 'elm9', 'elm10', 'Elm11', 'Elm12', 'elm13']

См. его в режиме онлайн: ideone .

Код отсюда: Сортировка для людей: естественный порядок сортировки .

16
задан Mo Reza Farahani 7 June 2019 в 16:20
поделиться

3 ответа

Используйте .listStyle(GroupedListStyle()), который удаляет любые пустые ячейки, которые могут прибыть ниже.

   List {
          Text("Item 1")
          Text("Item 2")
          Text("Item 3")
        }.listStyle(GroupedListStyle())

enter image description here

1
ответ дан 22 October 2019 в 20:53
поделиться

Можно добавить, что это, для удаляет разделитель.

UITableView.appearance().separatorColor = .clear
2
ответ дан 29 November 2019 в 23:06
поделиться

Никакая потребность в Section или .grouped стиль!

существует UITableView позади SwiftUI List для iOS. Таким образом удалить

- Дополнительные разделители (ниже списка):

Вам нужно tableFooterView и удалить

- Все разделители (включая фактические):

Вам нужно separatorStyle, чтобы быть .none

init() {
    // To remove only extra separators below the list:
    UITableView.appearance().tableFooterView = UIView()

    // To remove all separators including the actual ones:
    UITableView.appearance().separatorStyle = .none
}

var body: some View {
    List {
        Text("Item 1")
        Text("Item 2")
        Text("Item 3")
    }
}

Примечание, что оно устраняет все разделители таблиц/списков. Таким образом, можно переключить это в методы как onAppear() или и т.д. как Вы желаете.

9
ответ дан 29 November 2019 в 23:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: