4

がありUITableViewController、セルの1つでプッシュアクションセグエから戻ったときに垂直スクロールバーが点滅しないようにしたいと思います(View Controllerをポップしてに戻りますUITableViewController)。

テーブルに多くの行がある場合 (私の場合、高さはそれぞれ 60 ポイントで、画面よりも大きいため、約 20 行あります)、戻ると、常に垂直スクロール バーが 1 回点滅して、テーブル内の場所が表示されます。しかし、私はそれを望んでいませんが、ユーザーがスクロールしたときに表示されるように、スクロールバーを保持したいと考えています。したがって、完全に無効にすることはできません。

これはデフォルトの動作ですか?一時的に無効にすることはできますか?

4

3 に答える 3

11

UITableViewControllerサブクラスの使用を避ける必要のない、より簡単な解決策があります。

http://stackoverflow.com/users/2445863/yonosoytu に記載されているようにオーバーライドできますviewDidAppear:が、呼び出しを控える必要はありません[super viewDidAppear:animated]。その前に垂直スクロール インジケーターを無効にし、後で有効に戻してください。

- (void)viewDidAppear:(BOOL)animated {
    self.tableView.showsVerticalScrollIndicator = NO;
    [super viewDidAppear:animated];
    self.tableView.showsVerticalScrollIndicator = YES;
}

Interface Builder を使用しているShows Vertical Indicator場合は、上のオプションを無効にして、上記のコードで有効にすることができtableViewます。UIViewController

于 2014-03-12T16:33:42.920 に答える