国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

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

2019-10-21 18:41:15
字體:
來源:轉載
供稿:網友

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

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

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

ios,去掉,導航欄

     方法二:給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賦值才可以,
注:相關教程知識閱讀請移步到IOS開發頻道。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武宁县| 瑞金市| 金寨县| 浏阳市| 义马市| 京山县| 西乡县| 卓资县| 米泉市| 敖汉旗| 博乐市| 保康县| 丰镇市| 宁陵县| 葫芦岛市| 关岭| 镇沅| 阳春市| 马尔康县| 盈江县| 威远县| 宜都市| 宣化县| 山阳县| 孝感市| 赫章县| 张家港市| 建瓯市| 宁南县| 元谋县| 隆化县| 仙居县| 项城市| 淮南市| 宁国市| 蒲城县| 友谊县| 丹棱县| 盈江县| 涿州市| 冷水江市|