iOS - пользовательский адаптивный индексный указатель раздела - PullRequest
0 голосов
/ 28 апреля 2019

Я делаю пользовательский список индекса раздела.Этот список должен уменьшить количество плиток, когда нет места для каждого элемента, как у Apple.• Список плиток помещает • между удаленными элементами.

The tiles on the iPhone SE. The tiles on the iPhone 8 Plus

Я создал следующий код, но не могуузнайте, как равномерно удалить элементы между A и Z #.

// Get the frame height.
// iPhone SE
let frameHeight:CGFloat = 236
// iPhone 8 Plus
//let frameHeight:CGFloat = 318

// Get the required tile height.
let tileHeight:CGFloat = 14.1

// Get the tiles and count.
var indexTitles = UILocalizedIndexedCollation.current().sectionIndexTitles
let indexTitlesCount = CGFloat(indexTitles.count)

// Get the number of tiles that can fit in the space. For an iPhone SE is 16 items.
let maxTileSpaceCount = floor(frameHeight / tileHeight)
// Get the minimum number of tiles that have to be removed.
let minimumNumberOfTilesToRemove = (indexTitlesCount - maxTileSpaceCount)
...
...