Вертикально по центру NSTextFieldCell? - PullRequest
8 голосов
/ 19 февраля 2011

У меня есть NSTableView, где я изменяю высоту строк с помощью следующего кода:

- (CGFloat)tableView:(NSTableView *)tableView heightOfRow:(NSInteger)row
{
    return 32;
}

Проблема в том, что мои текстовые ячейки все еще выравниваются по верху ячейки, что делает еговыглядеть неловкоЯ не смог понять, как его вертикально отцентрировать.Кто-нибудь еще нашел решение этой проблемы?

1 Ответ

6 голосов
/ 20 февраля 2011

См. " Есть ли" правильный "способ заставить NSTextFieldCell рисовать вертикально центрированный текст? "

В настоящее время нет простого способа использования только публичного API. Приведенный выше вопрос упоминает, что недокументированное поле _cFlags.vCentered - это самый быстрый способ заставить его работать, хотя оно не поддерживается и не гарантирует правильную работу . Также помните, что переопределение методов приведет к тому, что ваш код будет отличаться от того, что делает AppKit.

Я только что подал радар для этого:

http://openradar.appspot.com/9028329 Добавление общедоступного API для вертикально центрированного текста в NSCell


РЕДАКТИРОВАТЬ: Вот некоторые дополнительные связанные ресурсы:

http://www.red -sweater.com / блог / 148 / что-а-разница-а-клеток делает

http://www.cocoabuilder.com/archive/cocoa/174994-repositioning-an-nstextfieldcell.html

...