你好,歡迎來到IOS教程網

 Ios教程網 >> IOS訊息 >> 關於IOS >> iOS7 UI兼容 導航欄按鈕邊框 UINavigationItem left and right padding

iOS7 UI兼容 導航欄按鈕邊框 UINavigationItem left and right padding

編輯:關於IOS

iOS7之前的UI為:

  iOS7 UI兼容 導航欄按鈕邊框 UINavigationItem left and right padding   而在iOS7中,由於設計方面的原因,使得UI變為:         iOS7 UI兼容 導航欄按鈕邊框 UINavigationItem left and right padding 修改的方法重寫UINavigationItem的setLeftBarButtonItem和setRightBarButtonItem方法,使之與之前版本兼容;   代碼如下:   @interface UINavigationItem (margin)   @end   @implementation UINavigationItem (margin) #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_6_1 - (void)setLeftBarButtonItem:(UIBarButtonItem *)_leftBarButtonItem {     UIBarButtonItem *spaceButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];     spaceButtonItem.width = -12;          if (_leftBarButtonItem)     {         [self setLeftBarButtonItems:@[spaceButtonItem, _leftBarButtonItem]];     }     else     {         [self setLeftBarButtonItems:@[spaceButtonItem]];     }     [spaceButtonItem release]; }   - (void)setRightBarButtonItem:(UIBarButtonItem *)_rightBarButtonItem {     UIBarButtonItem *spaceButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];     spaceButtonItem.width = -12;          if (_rightBarButtonItem)     {         [self setRightBarButtonItems:@[spaceButtonItem, _rightBarButtonItem]];     }     else     {         [self setRightBarButtonItems:@[spaceButtonItem]];     }     [spaceButtonItem release]; } #endif   @end       項目源碼不做任何修改,問題解決;   添加Button:   UIBarButtonItem *leftBarItem = [[UIBarButtonItem alloc] initWithCustomView:btnBack]; self.navigationItem.leftBarButtonItem = leftBarItem; [leftBarItem release];
  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved