12

テーブル ビューの上に検索バーと検索表示コントローラーを実装しました。

ビューが検索バーを読み込むと、相対スコープが常に表示されます。

ミュージック アプリのように、ユーザーが下にスクロールするまで非表示にする簡単な方法はありますか?

4

6 に答える 6

18

検索バーをテーブル ビューのヘッダーとして追加し、テーブル ビューのcontentoffsetプロパティを次のように設定する必要がありますviewDidLoad

[self.tableView setContentOffset:CGPointMake(0,44) animated:YES];//or (0, 88) depends on the height of it

検索ディスプレイコントローラーの場合、これも試すことができます。

[self.searchDisplayController setActive:NO animated:YES];
于 2012-12-24T06:00:01.417 に答える
0

テーブルビューをリロードした最良の方法

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:YES];     
    [self performSelector:@selector(reload:) withObject:nil afterDelay:0.0];
    self.edgesForExtendedLayout = UIRectEdgeNone;
}

- (void)reload:(__unused id)sender {
        [self.searchDisplayController setActive:YES];
        [self.tableView reloadData];
        [self.refreshControl endRefreshing];
    } else {
        [self.refreshControl endRefreshing];
        [[[UIAlertView alloc]initWithTitle:@"Error" message:[error localizedDescription] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil] show];
    }
}

ありがとう

于 2015-08-05T06:51:23.567 に答える
0

iOS 7 の場合と使用中UINavigationController

[self.tableView setContentOffset:CGPointMake(0, self.searchBar.height + self.navigationController.navigationBar.height)];
于 2014-04-01T18:56:00.933 に答える