UIView under UINavigationBar on IOS7

2019-01-23 10:09发布

We're working on the transition between IOS6 and IOS7 and have the next issues, for the moment without solution:

The structure of our view is the next one:

  1. UIView
  2. UIToolbar for ad-hoc buttons (filter button for the list)
  3. UISearchBar over the UIToolbar to integrate the search component with the list
  4. UITableView

Working perfectly on the previous versions of the IOS SDK.

But in IOS7 we have the next troubles:

  1. The UIToolbar and UISearch bar is not visible anymore
  2. We integrated the UIRefreshBar component and after refresh the UITableView always move under the UINavigationBar

Any suggestions?

3条回答
对你真心纯属浪费
2楼-- · 2019-01-23 10:34

Regarding
1.The UIToolbar and UISearchBar is not visible any more write the below code in viewDidLoad and your problem will solved.

[self setEdgesForExtendedLayout:UIExtendedEdgeLeft | 
                                UIExtendedEdgeBottom | 
                                UIExtendedEdgeRight];
查看更多
你好瞎i
3楼-- · 2019-01-23 10:39

Regarding 2. We integrated the UIRefreshBar component and after refresh the UITableView always move under the UINavigationBar

Make the NavigationBar not translucent, by default it is which allows views to scroll underneath it.

查看更多
聊天终结者
4楼-- · 2019-01-23 10:42
  1. In viewDidLoad this worked for me

    [self setEdgesForExtendedLayout:UIRectEdgeNone];

  2. If you like storyboard, select the viewController and make sure Extended Edges >> Under top bars is not selected.

enter image description here


Update: For people like me, who can't install Xcode 5 available only in Mountain Lion:

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
    [self setEdgesForExtendedLayout:UIRectEdgeNone];
#endif
查看更多
登录 后发表回答