【问题标题】:How to make UITableView content scroll around a central point如何使 UITableView 内容围绕中心点滚动
【发布时间】:2017-02-20 02:48:03
【问题描述】:

我试图弄清楚如何使 UITableView 的内容围绕屏幕两侧的两个条包含的区域“居中”,以便它适用于所有屏幕尺寸的设备。我的意思是:

  • 视图的初始状态应该是该区域内的第一个单元格
  • 表格视图应该能够滚动,直到最后一个单元格位于该区域内
  • 如果单元格仍在屏幕上,它们不应消失

围绕表格视图的内容偏移和插入,以及调整表格视图的框架,我尝试了许多不同的方法,但我不可避免地要么插入错误,要么最终导致单元格在它们离开屏幕之前消失.

我想知道这是否完全是错误的方法,或者我的设置组合不正确。

任何提示将不胜感激!

【问题讨论】:

    标签: ios objective-c uitableview uiscrollview


    【解决方案1】:

    以下对我有用:

    //In viewDidLoad, etc...:
    self.edgesForExtendedLayout = UIRectEdgeNone;
    self.automaticallyAdjustsScrollViewInsets = YES;
    
    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
    
        let inset = (self.tableView.frame.size.height - 44) / 2.0 // Figure out your bar size here
    
        self.tableView.contentInset.top = inset
        self.tableView.contentInset.bottom = inset
    
        let path = NSIndexPath(row: 0, section: 0) as IndexPath
    
        self.tableView.scrollToRow(at: path, at: .middle, animated: false)
    }
    

    【讨论】:

      猜你喜欢
      • 2017-03-12
      • 2017-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      相关资源
      最近更新 更多