Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift UIScrollView contentSize不';行不通_Swift_Uiscrollview_Contentsize - Fatal编程技术网

Swift UIScrollView contentSize不';行不通

Swift UIScrollView contentSize不';行不通,swift,uiscrollview,contentsize,Swift,Uiscrollview,Contentsize,我的视图垂直滚动时出现问题。我只希望我的ScollView水平滚动。我试图更改contentSize,但没有成功 我使用约束,下面的代码: var plugeeNews : [Plugs]? var topNewsScrollView : UIScrollView = { var scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 75))

我的视图垂直滚动时出现问题。我只希望我的ScollView水平滚动。我试图更改contentSize,但没有成功

我使用约束,下面的代码:

var plugeeNews : [Plugs]?

var topNewsScrollView : UIScrollView = {
        var scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 75))
        scrollView.isPagingEnabled = true
        scrollView.showsHorizontalScrollIndicator = false
        scrollView.showsVerticalScrollIndicator = false
        scrollView.backgroundColor = .gray
        scrollView.isDirectionalLockEnabled = true
        scrollView.translatesAutoresizingMaskIntoConstraints = false
        return scrollView
    }()


func setupViewInTopNewsScrollView() {
        for i in 0..<plugeeNews.count {
            let xPosition = screenSize.width * CGFloat(i)
            let myView = TopNewsCell(frame: CGRect(x: xPosition, y: 0, width: screenSize.width , height: heightOfNewsCell))
            myView.label.text = plugeeNews[i]
            myView.randomBackgroundColor(number: i)
            topNewsScrollView.contentSize = CGSize(width: topNewsScrollView.frame.width * CGFloat(i + 1),height:  heightOfNewsCell)
            topNewsScrollView.addSubview(myView)
        }
    }
这就是结果:

我不希望在UIScollView上的白色/灰色视图下方显示灰色视图,我只希望在视图之间水平滑动。

设置内容大小:

scrollContainer.contentSize = CGSize(width:10000, height:50)

为什么每次添加新的
UIView
时都要设置
uicrollview的
contentSize
?您应该仔细阅读本教程Victor:避免创建新变量来保存
i
值。啊,好的,我将阅读教程,谢谢
contentSize
应该只分配一次,而不是每次都分配一次,就像您在上面代码中所做的那样如果您将
width
设置为
10000
当然它会水平滚动,但是这需要根据
uicrollview
中的
UIView
s的数量进行适当的计算,而不是以这种方式手动设置好吧,我要试试这个,但是为什么我必须把50作为我的内容视图(100)的高度,而不是不起作用的高度,我总是可以垂直移动我的单元格,而且它不居中。
scrollContainer.contentSize = CGSize(width:10000, height:50)