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

iOS如何去掉導航欄(UINavigationBar)下方的橫線

 更新時間:2017年05月18日 11:19:44   作者:BrandonYum  
本篇文章主要介紹了iOS如何去掉導航欄(UINavigationBar)下方的橫線,非常具有實用價值,需要的朋友可以參考下

網上有很多關于隱藏的方法,設置后能夠成功,但是跳轉到其他界面的時候發(fā)現(xiàn),其他界面橫線也被隱藏了。

目前主流的方法是將shadowImage用一張空的圖片圖片替換掉

可是這種方法不能解決navigationController里面的某個界面隱藏,其他不變的問題。

[self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault];
self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init];

通過xcode查看UINavigationBar的樹形結構發(fā)現(xiàn),可以很清楚的看出橫線就是下面的_UIBarBackground下面的UIImageView對象


樹形結構如下

**UINavigationBar**
**--[ 1] _UIBarBackground**
**----[ 2] UIImageView**
**----[ 2] UIVisualEffectView**
**------[ 3] _UIVisualEffectBackdropView**
**------[ 3] _UIVisualEffectFilterView**
**--[ 1] UINavigationButton**
**----[ 2] UIButtonLabel**
**--[ 1] _UINavigationBarBackIndicatorView**

所以能不能遍歷UINavigationBar的所有子view然后找到橫線對應的UIImageView對象,隱藏掉呢?

遍歷UINavigationBar所有的子view獲取子view的數(shù)組。

NSArray *allSubviews(UIView *aView) {
 NSArray *results = [aView subviews];
 for (UIView *eachView in aView.subviews)
 {
   NSArray *subviews = allSubviews(eachView);
   if (subviews)
     results = [results arrayByAddingObjectsFromArray:subviews];
 }
 return results;
}

遍歷數(shù)組找到橫線對應的UIImageView對象

@property (nonatomic, strong) UIImageView *shadowImage;
- (void)viewWillAppear:(BOOL)animated{
  [super viewWillAppear:animated];
  NSArray *subViews = allSubviews(self.navigationController.navigationBar);
  for (UIView *view in subViews) {
    if ([view isKindOfClass:[UIImageView class]] && view.bounds.size.height<1){
     //實踐后發(fā)現(xiàn)系統(tǒng)的橫線高度為0.333
      self.shadowImage = (UIImageView *)view;
    }
  }
  self.shadowImage.hidden = YES;
}

最后在viewDidDisappear方法里面還原顯示狀態(tài)。

- (void)viewWillDisappear:(BOOL)animated{
  [super viewWillDisappear:animated];
  self.shadowImage.hidden = NO;
}

運行后發(fā)現(xiàn)完美解決

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • IOS改變UISearchBar中搜索框的高度

    IOS改變UISearchBar中搜索框的高度

    這篇文章主要介紹了IOS改變UISearchBar中搜索框的高度的相關資料,需要的朋友可以參考下
    2016-01-01
  • iOS中輸入框設置指定字符輸入的方法

    iOS中輸入框設置指定字符輸入的方法

    這篇文章主要給大家介紹了關于iOS中輸入框如何設置指定字符輸入的相關資料,其中介紹了關于只能輸入純數(shù)字、只能輸入純大小寫字母以及大小寫字母和數(shù)字結合輸入等指定字符的限制,需要的朋友可以參考借鑒,下面來一起看看吧。
    2018-01-01
  • 輕松理解iOS 11中webview的視口

    輕松理解iOS 11中webview的視口

    這篇文章主要介紹了iOS 11中webview的視口知識,需要的朋友可以參考下
    2017-09-09
  • 一道值得深入思考的iOS面試題詳解

    一道值得深入思考的iOS面試題詳解

    這篇文章主要給大家分享介紹了關于一道值得深入思考的iOS面試題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-02-02
  • iOS實現(xiàn)模擬定位功能的示例代碼

    iOS實現(xiàn)模擬定位功能的示例代碼

    這篇文章主要介紹了iOS實現(xiàn)模擬定位功能的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • iOS中WKWebView的一些特殊使用總結

    iOS中WKWebView的一些特殊使用總結

    這篇文章主要給大家介紹了關于iOS中WKWebView的一些特殊使用,文中通過示例代碼介紹的非常詳細,對大家學習或者使用iOS具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12
  • iOS開發(fā)之路--微博骨架搭建

    iOS開發(fā)之路--微博骨架搭建

    本文是IOS開發(fā)之路的第四篇,主要講訴如何一步步搭建起微博的骨架,并附上源碼,希望對大家的IOS開發(fā)能提供些借鑒
    2014-08-08
  • iOS關閉虛擬鍵盤方法匯總

    iOS關閉虛擬鍵盤方法匯總

    在iOS應用開發(fā)中,有三類視圖對象會打開虛擬鍵盤,進行輸入操作,但如何關閉虛擬鍵盤,卻沒有提供自動化的方法
    2016-04-04
  • IOS10 遠程推送適配詳細介紹

    IOS10 遠程推送適配詳細介紹

    這篇文章主要介紹了IOS10 遠程推送適配詳細介紹的相關資料,iOS10推送新增了UserNotifications Framework,這里主要介紹如何實現(xiàn)遠程推送,需要的朋友可以參考下
    2016-12-12
  • IOS自定義UIView

    IOS自定義UIView

    本文主要介紹下存代碼的自定義UIView和能夠在storeboard中實時顯示效果的自定義UIView。下面跟著小編一起來看下吧
    2017-03-03

最新評論

宁乡县| 镇江市| 大石桥市| 哈巴河县| 遂昌县| 湟中县| 城市| 延长县| 大余县| 囊谦县| 宜宾县| 奉化市| 诏安县| 泰和县| 栾川县| 长葛市| 桑日县| 五莲县| 溧阳市| 宜君县| 旅游| 双鸭山市| 辽宁省| 普陀区| 曲松县| 道孚县| 察雅县| 盐源县| 新兴县| 鄂温| 安阳县| 札达县| 盘锦市| 安塞县| 镇安县| 登封市| 德兴市| 华亭县| 陈巴尔虎旗| 东阳市| 苏州市|