自定義導(dǎo)航左/右按鈕的時(shí)候,由于圖片或其他原因總導(dǎo)致按鈕的邊距過大且不好調(diào)整,如果再添加一個(gè)UIBarButtonSystemItemFixedSpace的item就很好解決了.
// 1.自定義返回按鈕
UIImage *backIcon = [UIImage imageNamed:@"back_icon"];
UIButton *backButton = [[UIButton alloc]initWithFrame:CGRectMake(-20, 0, 30, 30)];
[backButton setImage:backIcon forState:UIControlStateNormal];
[backButton addTarget:self action:@selector(backToPrevious) forControlEvents:UIControlEventTouchUpInside];
// 2.添加UIBarButtonSystemItemFixedSpace類型的item
UIBarButtonItem *leftNegativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
// 2.1-----重點(diǎn):通過調(diào)整width值來調(diào)整間距----
leftNegativeSpacer.width = -15;
// 3.添加
NSArray *leftItems = @[leftNegativeSpacer,[[UIBarButtonItem alloc]initWithCustomView:backButton]];
self.navigationItem.leftBarButtonItems = leftItems;
// 4.如果是兩按鈕之間需要調(diào)整間距也可以加上一個(gè)UIBarButtonSystemItemFixedSpace類型的item
// eg:Item1和Item2之間有個(gè)間距 --> @[Item1,FixedSpaceItem,Item2];