Две кнопки в UINavigationBar не выровнены

У меня есть следующий код в viewDidLoad добавить две кнопки справа от UINavigationBar - Я опустил код левой кнопки "Отмена".

    UIBarButtonItem *doneButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemDone
                                                                                    target: self
                                                                                    action: @selector(done:)];

    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemAdd
                                                                                    target: self
                                                                                    action: @selector(add:)];

    NSArray* buttons = @[addButton, doneButtonItem];
    self.navigationItem.rightBarButtonItems = buttons;

Прекрасно работает, но выглядит не очень хорошо, символ "+" кажется больше, чем слово "Готово", и они появляются вне центра друг друга:

введите описание изображения здесь

Есть ли способ сделать это выглядеть лучше?

1 ответ

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

Мое предложение - просто держи его, ничего не делай.

Однако, если вы действительно хотите изменить позицию по умолчанию, здесь есть много решений: Изменить позицию UIBarButtonItem в UINavigationBar

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