带有 snapkit 的垂直居中 UIImageView
Posted
技术标签:
【中文标题】带有 snapkit 的垂直居中 UIImageView【英文标题】:Vertical-center UIImageView with snapkit 【发布时间】:2018-07-13 11:58:19 【问题描述】:如何使用 snapkit 在超级视图中垂直居中 UIImageView? 我试过这样:
imageview.snp.makeConstraints (make) in
make.centerY.equalTo(view.center.y);
但似乎不太好。我该如何使用 snapkit
【问题讨论】:
我猜你忘了添加make.centerX.equalTo(view.center.x)
部分。并且还需要 2 个其他约束 - width
和 height
。因为它知道中心应该在哪里。但不知道你的图像视图应该有多大
make.centerY.equalTo(view.center.y);只需在其父视图的垂直中心制作图像视图的按钮
【参考方案1】:
试试下面的代码
Imageview.snp.makeConstraints (make) in
make.left.equalTo(view.snp.left).offset(50)
make.centerY.equalTo(self.view)
make.width.height.equalTo(100)
【讨论】:
【参考方案2】:只给 imageView 一个 centerY 是不够的,你还需要给它 width、height 和 x 约束,所以试试这个
imageview.snp.makeConstraints (make) in
make.left.equalTo(view.snp.left).offset(50)
make.centerY.equalTo(self.view)
make.width.height.equalTo(100)
【讨论】:
你应该指定 width , heigth 和 x 约束【参考方案3】:如果您想将 imageView 设置在其父视图的中心,大小为 100x100,请尝试以下代码;
imageview.snp.makeConstraints (make) in
make.centerY.centerX.equalToSuperview()
make.height.width.equalTo(100)
如果您想将 imageView 设置为垂直中心,并且从其父视图的前缘偏移 50px,大小为 100x100,请尝试以下代码;
imgView.snp.makeConstraints (make) in
make.centerY.equalToSuperview()
make.leading.equalToSuperview().offset(50)
make.height.width.equalTo(100)
【讨论】:
以上是关于带有 snapkit 的垂直居中 UIImageView的主要内容,如果未能解决你的问题,请参考以下文章