代码之家  ›  专栏  ›  技术社区  ›  alexey

UITableView ScrollToRowatinexPath的奇怪行为:

  •  0
  • alexey  · 技术社区  · 14 年前

    我得定个目标 UITableView 到第一行以外的行(例如,第二节的第一行)。

    在我的视图控制器中 视图加载 我写道:

    - (void)viewDidLoad
    {
        // self.view is a container view, not UITableView
        [super viewDidLoad];
        [table scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:1]
           atScrollPosition:UITableViewScrollPositionTop animated:NO];
    }
    

    当屏幕加载时,滚动位置为 立即设置。否则,当 有生气的 参数设置为“是”,则立即设置位置而不显示任何动画。 发生什么事?

    为UITableView设置初始行位置的正确方法是什么?

    3 回复  |  直到 14 年前
        1
  •  0
  •   Black Coder    12 年前

    最好的地方应该是观景台。此外,您应该在cellWillDisplay中调用scroll方法来确保。记住在调用scroll方法之前检查indexPath

        2
  •  0
  •   Dutchie432    14 年前

        3
  •  0
  •   iwasrobbed    14 年前

    这样不行 viewDidLoad viewWillAppear 因为那时表很可能还没有被填充(至少在我的情况下没有)