Ios 在Swift中嵌套UIScrollView

Ios 在Swift中嵌套UIScrollView,ios,swift,uiscrollview,Ios,Swift,Uiscrollview,我有一个图像数组的滚动视图,它可以使图像左右滚动,但我不能向下滚动,而是可以滚动我的tableview单元格…我需要能够向下滚动,而不是将图像数组固定在视图上,有什么方法吗 我使用的代码是: override func viewDidLoad() { super.viewDidLoad() scrollView.frame = view.frame imageArray = [UIImage(named:"adsImage3")!,UIImage(named:"a

我有一个图像数组的滚动视图,它可以使图像左右滚动,但我不能向下滚动,而是可以滚动我的tableview单元格…我需要能够向下滚动,而不是将图像数组固定在视图上,有什么方法吗

我使用的代码是:

    override func viewDidLoad() {
    super.viewDidLoad()
    scrollView.frame = view.frame
    imageArray = [UIImage(named:"adsImage3")!,UIImage(named:"adsImage2")!,UIImage(named:"adsImage")!]
    navigationController?.navigationBar.barTintColor = UIColor.white

    for i in 0..<imageArray.count {
        let imageView = UIImageView()
        imageView.contentMode = .scaleAspectFit
        imageView.clipsToBounds = true
        imageView.image = imageArray[i]
        let xPosition = self.view.frame.width * CGFloat(i)
        imageView.frame = CGRect(x: xPosition, y: 0, width: self.scrollView.frame.width, height: 380)

        scrollView.contentSize.width = scrollView.frame.width * CGFloat(i + 1)
        scrollView.addSubview(imageView)
    }

}
override func viewDidLoad(){
super.viewDidLoad()
scrollView.frame=view.frame
imageArray=[UIImage(名为:“adsImage3”)!、UIImage(名为:“adsImage2”)!、UIImage(名为:“adsImage3”)!]
navigationController?.navigationBar.barTintColor=UIColor.white
对于0..UITableViewCell中的i{
将单元格:MainMenuRowSelectionTableViewCell=self.tableView.dequeueReusableCell(标识符为:“cell”,for:indexPath)设为!MainMenuRowSelectionTableViewCell

    var cellColors = ["#FFB3B3","#FFFFFF"]
    cell.contentView.backgroundColor = UIColor(hexString: cellColors[indexPath.row % cellColors.count])

    imageArray = [UIImage(named:"adsImage3")!,UIImage(named:"adsImage2")!,UIImage(named:"adsImage")!]

    for i in 0..<imageArray.count {
        let imageView = UIImageView()
        imageView.contentMode = .scaleAspectFit
        imageView.clipsToBounds = true
        imageView.image = imageArray[i]
    }
    return cell
}
var cellColors=[“#FFB3B3”,“#FFFFFF”]
cell.contentView.backgroundColor=UIColor(hexString:cellColors[indexPath.row%cellColors.count])
imageArray=[UIImage(名为:“adsImage3”)!、UIImage(名为:“adsImage2”)!、UIImage(名为:“adsImage3”)!]
因为我在0。。
我需要能够向下滚动,而不是将我的图像阵列固定在视图上


表格视图是垂直滚动视图。您应该将图像的水平滚动视图转换为表格视图的标题视图(即其
tableHeaderView
),并使表格视图占据整个屏幕。现在,您可以滚动表格,并将图像的滚动视图向上滚动出屏幕。

是的,可以这样做。嵌套滚动视图的一个很好的参考是,这里还有示例代码

简而言之,您可能需要创建:

  • 填充视图并可垂直滚动的
    UIScrollView
  • 其中的
    UIScrollView
    可用于图像并可水平滚动,以及
  • 您的
    UITableView
    也位于第一个滚动视图中

  • u的意思是,用一个滚动视图填充整个视图,然后放置一个表视图并填充滚动视图?不完全是,一个滚动视图将填充屏幕,其他两个滚动视图将在其中。请参见上面的屏幕截图。也就是说,我会先尝试@matt的解决方案。不过,这可能是另一种选择。我已经完成了,但是不在单元格中,但它不显示我的滚动视图…它只显示cells@WilliamLoke我不知道您现在在做什么。也许您不知道如何调整和配置表视图的标题视图(即其
    tableHeaderView
    属性)。但这将是一个不同的问题。您可以使用UICollectionView以网格格式显示图像,而不是使用UIScrollView。它将解决滚动问题,而且更容易实现您期望的功能。