UIRefreshControl内部の myを使用しようとしていますが、UITableViewControllerそれ自体が の内部にありUINavigationController、そのhidesNavigationBarプロパティが に設定されていますNO(したがって、ナビゲーション バーが表示されます)。
はUIRefreshControl機能しますが、 によって隠されていUINavigationBarます。この問題に遭遇した人が他にいないことに驚いています。
関連する可能性のあるポイント:
- my のを
rootViewControllermyに設定しました。UIWindowUINavigationController - のプロパティを設定して、の初期ビュー コントローラを
UINavigationController設定します。viewControllersUINavigationController - 私の
UITableViewControllerサブクラスは nib でインスタンス化されています。 - サブクラス
UIRefreshControlのviewDidLoadメソッドで myをインスタンス化します。このメソッドでサブクラスのプロパティUITableViewControllerを設定します。refreshControlUITableViewController - は
UIRefreshControl完全に正常に動作し、その一部を見ることができますが、私のUINavigationBar.hidesNavigationBarに設定すると、完全に正常に見えますYES(ただし、非表示にしたくありません)。
編集:
my の作成と配置に使用されるコードUIRefreshControlは次のとおりです。
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self
action:@selector(toggleRefresh:)
forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
このコード スニペットは、の子ビュー コントローラーであるサブクラスのviewDidLoadメソッドにあります。UITableViewControllerUINavigationViewController
