一个视图控制器中的两个 tableviews 和 tableviews 的高度应该等于它的内容

Posted

技术标签:

【中文标题】一个视图控制器中的两个 tableviews 和 tableviews 的高度应该等于它的内容【英文标题】:Two tableviews in one view controller and height of tableviews should be equal to its content 【发布时间】:2020-11-07 16:34:24 【问题描述】:

我是一个新的应用内 ios 开发者。我正在尝试获得这样的用户界面:-

这里有两种类型的表格与一个表格视图相关联。这个设计在安卓中。

我尝试在 IOS 中使用自定义标题获取一个表格视图,并在标题中设置另一个表格视图。像这样:-

并像这样设置代码:-

override func viewWillLayoutSubviews() 

    secondview?.frame.size = CGSize(width: tableViews.frame.width, height: secondtableViews.contentSize.height + 50 + tableViews.contentSize.height)
    secondview.layer.masksToBounds = true





func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
    if tableView == tableViews 
        debugPrint(" first")
         return 50
    else
        debugPrint(" second")
        return 50
    


func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
    if tableView == tableViews 
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell")! as UITableViewCell
        cell.textLabel?.text = "skdjfhkjfhjkshfkhsdkfhjsd"
        return cell
    else
        let cell = tableView.dequeueReusableCell(withIdentifier: "gcell")! as UITableViewCell
        cell.textLabel?.text = "skdjfhkjfh    jkshfkhsdkfhjsd"
        return cell
    
    return UITableViewCell()

我改变了主表视图的高度。根据表格视图的内容,它在某些部分高度上起作用,并且第二个和第二个显示的第一个表格的数据显示在第一个上。谁能帮我解决这个设计问题。

【问题讨论】:

您期望的 UI/UX 是什么?顶部和底部的 tableview 是否有不同的滚动行为? 不,他们应该像一个表格一样滚动,它像一个表格一样滚动,但是第一个表格的内容移到了下一个,第二个内容移到了第一个,这是我的主要问题。 然后只使用 1 个 tableview,使用不同的部分和单元格来制作 UI 你可以看到在上部分给出了部分高度,在下部分没有给出高度,并且它们之间还给出了一个标题 你知道你可以在 1 个表格视图中拥有不同类型的单元格 【参考方案1】:

您应该使用一个包含两个部分和两种不同类型单元格的 tableview...!

【讨论】:

以上是关于一个视图控制器中的两个 tableviews 和 tableviews 的高度应该等于它的内容的主要内容,如果未能解决你的问题,请参考以下文章

tableView.reloadData() 和 DispatchQueue 无法在不同的视图控制器中重新加载 tableview

Objective-C 链接两个 Tableview

在两个 tableview 控制器之间传递一个数字对象:IOS

在uiviewcontroller中的双表视图

如何使用按钮使用两个表格视图

TableView 上的搜索栏不起作用