3

IOS6 と IOS7 の間の移行に取り組んでおり、次の問題があります。

ビューの構造は次のとおりです。

  1. UIView
  2. アドホック ボタンの UIToolbar (リストのフィルター ボタン)
  3. 検索コンポーネントをリストと統合するための UIToolbar 上の UISearchBar
  4. UITableView

IOS SDK の以前のバージョンで完全に動作します。

しかし、IOS7 では次の問題があります。

  1. UIToolbar と UISearch バーが表示されなくなりました
  2. UIRefreshBar コンポーネントを統合し、更新後、UITableView は常に UINavigationBar の下に移動します

助言がありますか?

4

3 に答える 3

15
  1. これviewDidLoadで私のために働いた

    [self setEdgesForExtendedLayout:UIRectEdgeNone];

  2. ストーリーボードが好きな場合は、を選択し、>>が選択されていないviewControllerことを確認してください。Extended EdgesUnder top bars

ここに画像の説明を入力


更新: 私のように、Mountain Lion でのみ利用可能な Xcode 5 をインストールできない人のために:

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
    [self setEdgesForExtendedLayout:UIRectEdgeNone];
#endif
于 2013-09-19T10:34:35.967 に答える
13

1.とが表示されなくなった場合は、以下のコードを書き込むと問題が解決します
UIToolbarUISearchBarviewDidLoad

[self setEdgesForExtendedLayout:UIExtendedEdgeLeft | 
                                UIExtendedEdgeBottom | 
                                UIExtendedEdgeRight];
于 2013-07-24T11:19:43.297 に答える
2

2. UIRefreshBar コンポーネントを統合し、更新後、UITableView は常に UINavigationBar の下に移動します

NavigationBar を半透明にしないようにします。デフォルトでは、ビューがその下をスクロールできるようになっています。

于 2013-07-24T14:29:46.347 に答える