最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS 11 使用兩種方法替換(Method Swizzling)去掉導航欄返回按鈕的文字

 更新時間:2018年05月07日 10:36:40   作者:星紅  
這篇文章主要介紹了iOS 11 使用方法替換(Method Swizzling)去掉導航欄返回按鈕的文字,需要的朋友可以參考下

  方法一:設置BarButtonItem的文本樣式為透明顏色,代碼如下:

[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor clearColor]} forState:UIControlStateNormal]; 
[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor clearColor]} forState:UIControlStateHighlighted]; 

   此外這種方法會導致title不能居中,被偏移很多,如下所示(雖然不被顯示,也占了導航欄左邊很大一部分位置)

     方法二:給UIViewController添加類別,然后在load方法里面用Method Swzilling方法替換 交換ViewDidAppear,部分代碼如下

+(void)load {
  swizzleMethod([self class], @selector(viewDidAppear:), @selector(ac_viewDidAppear));
}
- (void)ac_viewDidAppear{
  self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]
                       initWithTitle:@""
                       style:UIBarButtonItemStylePlain
                       target:self
                       action:nil];
  [self ac_viewDidAppear];
}
void swizzleMethod(Class class, SEL originalSelector, SEL swizzledSelector)
{
  // the method might not exist in the class, but in its superclass
  Method originalMethod = class_getInstanceMethod(class, originalSelector);
  Method swizzledMethod = class_getInstanceMethod(class, swizzledSelector);
  // class_addMethod will fail if original method already exists
  BOOL didAddMethod = class_addMethod(class, originalSelector, method_getImplementation(swizzledMethod), method_getTypeEncoding(swizzledMethod));
  // the method doesn't exist and we just added one
  if (didAddMethod) {
    class_replaceMethod(class, swizzledSelector, method_getImplementation(originalMethod), method_getTypeEncoding(originalMethod));
  }
  else {
    method_exchangeImplementations(originalMethod, swizzledMethod);
  }
}

注意事項:

要給整個backButtonItem賦值才可以,👇這種方法不行,因為backBarButtonItem默認為空,給nil方法消息,默認聲明都不執(zhí)行(參考官網(wǎng)

self.navigationItem.backBarButtonItem.title = @" ";

leftBarButtonItem 與backBarButtonItem 的顯示關系:

有l(wèi)eftBarButtonItem則優(yōu)先顯示當前VC的leftBarButtonItem,無則顯示上個VC的backBarButtonItem,再無則顯示上個VC的title(參考官網(wǎng)   還是官網(wǎng)解釋的清楚)

總結(jié)

以上所述是小編給大家介紹的iOS 11 使用兩種方法替換(Method Swizzling)去掉導航欄返回按鈕的文字,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • iOS使用WebView生成長截圖的第3種解決方案

    iOS使用WebView生成長截圖的第3種解決方案

    這篇文章主要給大家介紹了關于iOS使用WebView生成長截圖的第3種解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-09-09
  • iOS進階之xib上控件自動生成純代碼

    iOS進階之xib上控件自動生成純代碼

    本篇內(nèi)容是一篇關于IOS開發(fā)進階的內(nèi)容,學習xib上控件自動生成純代碼這個功能,有興趣的朋友參考下。
    2018-02-02
  • iOS Gif圖片展示N種方式(原生+第三方)

    iOS Gif圖片展示N種方式(原生+第三方)

    這篇文章主要介紹了iOS Gif圖片展示N種方式,包括原生、第三方方式展示,感興趣的小伙伴們可以參考一下
    2016-03-03
  • IOS應用程序多語言本地化的兩種解決方案

    IOS應用程序多語言本地化的兩種解決方案

    本篇文章介紹了IOS應用程序多語言本地化解決方案,這里整理了詳細的解決辦法,有需要的小伙伴可以參考下。
    2016-11-11
  • IOS 開發(fā)之 NSMutableArray與NSArray 的區(qū)別

    IOS 開發(fā)之 NSMutableArray與NSArray 的區(qū)別

    這篇文章主要介紹了IOS 開發(fā)之 NSMutableArray與NSArray 的區(qū)別的相關資料,希望通過本文能掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-09-09
  • iOS 讀取URL圖片并存儲到本地的實例

    iOS 讀取URL圖片并存儲到本地的實例

    下面小編就為大家?guī)硪黄猧OS 讀取URL圖片并存儲到本地的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • iOS仿微信搖一搖動畫效果加震動音效實例

    iOS仿微信搖一搖動畫效果加震動音效實例

    這篇文章主要介紹了iOS仿微信搖一搖動畫效果加震動音效實例,詳細介紹了微信搖一搖功能的實現(xiàn)原理,非常具有實用價值,需要的朋友可以參考下。
    2017-03-03
  • iOS NSURLSessionDownloadTask實現(xiàn)文件斷點下載的方法

    iOS NSURLSessionDownloadTask實現(xiàn)文件斷點下載的方法

    本篇文章主要介紹了iOS NSURLSessionDownloadTask實現(xiàn)文件斷點下載的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • iOS如何掃描HEIF格式的二維碼圖片

    iOS如何掃描HEIF格式的二維碼圖片

    這篇文章主要告訴大家iOS如何掃描HEIF格式的二維碼圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • IOS開發(fā)之路--C語言基礎知識

    IOS開發(fā)之路--C語言基礎知識

    當前移動開發(fā)的趨勢已經(jīng)勢不可擋,這個系列希望淺談一下個人對IOS開發(fā)的一些見解,今天我們從最基礎的C語言開始,C語言部分我將分成幾個章節(jié)去說,今天我們簡單看一下C的一些基礎知識,更高級的內(nèi)容我將放到后面的文章中。
    2014-08-08

最新評論

姚安县| 龙游县| 北宁市| 额敏县| 宜宾市| 岚皋县| 逊克县| 余庆县| 青河县| 南郑县| 共和县| 栾城县| 通州区| 江都市| 综艺| 崇明县| 忻州市| 西乌珠穆沁旗| 梅河口市| 兖州市| 海阳市| 社旗县| 婺源县| 江西省| 棋牌| 邮箱| 盈江县| 安图县| 鲁甸县| 十堰市| 江源县| 精河县| 汕头市| 镇江市| 乃东县| 阿巴嘎旗| 甘泉县| 聊城市| 秦皇岛市| 松滋市| 奇台县|