这是来自应用商店中Ganna应用程序的图片:

ios - 如何创建一个 ScrollView ,顶部 View 是集合 View ,底部是列表?-LMLPHP

当用户单击顶部的搜索栏时,将弹出此视图。我相信他们使用UISearchController(将ScrollView传递给UISearchController的构造函数)实现了该功能,并且ScrollView进一步包含了“最近搜索”的水平滚动CollectionView(在顶部),但是我他们很困惑如何将趋势列表放在下面。这是“趋势”部分的TableView吗?

有谁知道如何构建这种类型的UI?

编辑:

单个TableView可以将标题用作“最近搜索”集合视图,而将其余的作为表视图单元使用吗?

最佳答案

滚动整个视图时,“最近搜索”是否会向上滚动? (我在我的应用商店中找不到此应用'

如果是这样,您可以自定义表格单元格为两种不同的类型,并在第一部分中使用“ collectionview”。

    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    var cell : UITableViewCell!
    if indexPath.section == 0 {
        cell = tableView.dequeueReusableCell(withIdentifier: "id of cell contain colletoinview for recent search", for: indexPath)
    } else {
        cell = tableView.dequeueReusableCell(withIdentifier: "id of cell for trending", for: indexPath)
    }
    return cell!
}


如果没有,则可以在uiviewcontroller中同时使用“集合视图”和“表视图”。

class SampleController : UIViewController {
    @IBOutlet var trendingTableView : UITableView!
    @IBOutlet var recentSearchCollectionView : UICollectionView!
}

extension SampleController : UITableViewDelegate, UITableViewDataSource {
    // handle your tableview, Implement protocol
}

extension SampleController : UICollectionViewDelegate, UICollectionViewDataSource {
    // handle your collectionview, Implement protocol
}


您甚至可以自定义滚动视图。(不建议这样做)

关于ios - 如何创建一个 ScrollView ,顶部 View 是集合 View ,底部是列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45047875/

10-14 20:24