2016-09-14 12 views
0

Что я пытался было, добавьте изображение в UIBarButtonItem и установите этот UIBarButtonItem в качестве значения по умолчанию backBarButtonItem.Выровняйте self.navigationItem.backBarButtonItem слева от устройства в iOS

Ниже мой код;

UIImage *backNavImg = [[UIImage imageNamed:@"backward_navigation_arrow"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; 

UIBarButtonItem *backBtnItem = [[UIBarButtonItem alloc] initWithImage:backNavImg style:UIBarButtonItemStylePlain target:self action:nil]; 

self.navigationItem.backBarButtonItem = backBtnItem; 

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

enter image description here

Я хочу, чтобы уменьшить этот разрыв с программными средствами. Как я могу это достичь.

Я попытался под кодом, но ничего не произошло.

[backBtnItem setImageInsets:UIEdgeInsetsMake(0, 0, 0, 0)]; 

ответ

1

вы можете сделать это путем добавления leftBarButtonItems

Пример:

UIImage *backNavImg = [[UIImage imageNamed:@"backward_navigation_arrow"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; 

UIBarButtonItem *backBtnItem = [[UIBarButtonItem alloc] initWithImage:backNavImg style:UIBarButtonItemStylePlain target:self action:nil]; 

UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil]; 
negativeSpacer.width = -8; 
[email protected][negativeSpacer,barButton]; 
+0

То же, что выше комментарий. Я хочу использовать 'self.navigationItem.backBarButtonItem' – AnujAroshA