Существует множество вопросов по этому поводу в стеке потока. На iOS <11 работает добавление отрицательной кнопки-проставки. </p>
В iOS 11, быстрое [_UINavigationBarContentView directionalLayoutMargins]
, возвращающее нулевое значение, удаляет любые завершающие отступы вокруг левых / правых элементов:
NSDirectionalEdgeInsets zeroMargins(id self, SEL _cmd) {
return NSDirectionalEdgeInsetsMake(0, 0, 0, 0);
}
- (void) doIt {
Class cl = objc_getClass("_UINavigationBarContentView");
if (cl != nil) {
method_setImplementation(class_getInstanceMethod(cl, @selector(directionalLayoutMargins)), (IMP)zeroMargins);
}
}