3

サブビューとしてUiTableViewにUiRefreshControllerを追加しましたが、うまく機能しますが、テーブルビューのヘッドに余分なスペースも追加します。この問題は iOS7 でのみ発生します。

コード:

refreshControl = [[UIRefreshControl alloc] init];
refreshControl.tag = 99;
[refreshControl addTarget:self action:@selector(handleRefresh:)     forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:refreshControl];
self.tableView.alwaysBounceVertical = YES;
[refreshControl beginRefreshing];
[refreshControl endRefreshing];

uirefresh コントローラなしuirefresh コントローラを追加した後

4

2 に答える 2

6

これをView Controllerに追加してみてください:

viewController.edgesForExtendedLayout = UIRectEdgeNone;

iOS7 では、ナビゲーション バーを埋めようとして余分なスペースが追加されている可能性があります。

于 2013-11-22T11:10:18.817 に答える
0

数日前にこの問題を見つけました。

追加することで viewController.edgesForExtendedLayout = UIRectEdgeNone;

プルして更新した後に余分なスペースを削除しますが、注意深く見ると、前のコード行を追加した後にナビゲーション バーの色も変更されていることがわかります。

ただし、ストーリーボードを使用して更新機能にプルを追加すると、きれいな出力が得られます。

ストーリーボードで TableViewController を選択 -> 属性インスペクターの下 -> "Refreshing" を Enabled に設定します。

于 2015-02-04T18:44:28.160 に答える