首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用addSubview将UIView移动到其他UIView中

问使用addSubview将UIView移动到其他UIView中
EN

Stack Overflow用户
提问于 2019-03-29 18:22:20
回答 3查看 61关注 0票数 0

我有UIImageView,我想把它对齐到右边。但我试着从搬家开始:

代码语言:javascript
复制
let imageView = UIImageView(image: UIImage(named: "icon_delete"))

var rect = imageView.frame
rect.origin.x += 100
imageView.frame = rect

photosViewController.overlayView.bottomStackContainer.addSubview(imageView)

但它似乎不起作用,图像被设置在左侧:

​

​

怎么啦?

EN

回答 3

Stack Overflow用户

发布于 2019-03-29 18:52:12

尝试使用自动布局锚点

代码语言:javascript
复制
imageView.leadingAnchor.constraint(equalTo: bottomStackContainer.leadingAnchor, constant: 100).isActive = true

bottomStackContainer是stackView吗?然后,您应该通过.addArrangedSubview()方法添加排列好的子视图。

票数 0
EN

Stack Overflow用户

发布于 2019-03-29 19:06:15

票数 0
EN

Stack Overflow用户

发布于 2019-04-03 05:31:56

首先,假设:

代码语言:javascript
复制
photosViewController.overlayView.bottomStackContainer

是一个视图(我在代码片段中将其称为containingView ),请尝试如下所示:

代码语言:javascript
复制
let imageView = UIImageView(image: UIImage(named: "icon_delete"))
containingView.addSubview(imageView)

imageView.translatesAutoresizingMaskIntoConstraints = false
containingView.translatesAutoresizingMaskIntoConstraints = false
imageView.trailingAnchor.constraint(equalTo: containingView.trailingAnchor).isActive = true

如果您需要将图像从尾部边缘向左移动,您可以:

代码语言:javascript
复制
imageView.trailingAnchor.constraint(equalTo: containingView.trailingAnchor, constant: -10).isActive = true

或者无论你需要把它移动到什么程度。注意:如果您忘记在两个视图上将自动调整大小掩码设置为false,您将得到一个运行时错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55415263

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档