NSTableView начать ячейки снизу - PullRequest
0 голосов
/ 01 октября 2018

У меня есть проект osX с NSTableview

[Screen]
[a]
[b]
[c]
[d]
no cell
no cell
[Screen]

Возможно ли изменить направление этого табличного представления, чтобы оно выглядело так?

[Screen]
no cell
no cell
[d]
[c]
[b]
[a]
[Screen]

Я пытался преобразовать, как в iOS, ноон выдает ошибки

tableView.transform = CGAffineTransform(scaleX: 1, y: -1)

то же самое относится и к ячейке

cell.contentView.transform = CGAffineTransform(scaleX: 1, y: -1)

что нужно сделать для доступа к свойству transform в OSX, как в iOS?

1 Ответ

0 голосов
/ 01 октября 2018

Из того, что, я думаю, вы хотите, вам не нужно использовать CGAffineTransform.

Вам просто нужно организовать свой набор данных так, как вы хотите, и соответственно заполнить ячейки.

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    guard let cell = tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier, for: indexPath) as? CustomTableViewCell else {
        return UITableViewCell()
    }
    cell.updateTitle(customCellTitles[indexPath.row])
    return cell
}

вместо того, чтобы ваши данные были установлены как:

customCellTitles = ["a","b","c","d"]

сделать это:

customCellTitles = ["d","c","b","a"]

В дополнение к этому, ябудет использовать следующую настройку вашего макета:

enter image description here

Обратите внимание, что нет верхнего ограничения.

Далее создайте выход изограничение высоты просмотра таблицы и обновление его, когда у вас есть готовый набор данных.

В простом сценарии, когда размер вашей ячейки одинаков (или не зависит от отображаемого содержимого), обновите ограничение высоты на основе размера ячейки:

tableViewHeightConstraint.constant = cellSize * numberOfCells
view.setNeedsLayout()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...