ios - 设置约束后 subview 无法显示

标签 ios swift

我想在 ImageView 顶部添加一个带有文本“Original”的小覆盖 View ,该 View 仅在用户查看原始图像时才可见。

这是我的toggleImage函数,当用户按下它时, ImageView 将显示原始图像(并且将弹出带有文本“原始”的 View ),然后当用户抬起手时返回到过滤后的图像。

    func toggleImage(sender: UILongPressGestureRecognizer) {
    sender.minimumPressDuration = 0.3
    if sender.state == .Began{
        imageView.image = self.rawImage!

        view.addSubview(originalText)


    }else if sender.state == .Ended{
        imageView.image = self.newImage
    }

现在我想用文本对 View 设置约束。

    func toggleImage(sender: UILongPressGestureRecognizer) {
    sender.minimumPressDuration = 0.3
    if sender.state == .Began{
        imageView.image = self.rawImage!

        view.addSubview(originalText)

        originalText.translatesAutoresizingMaskIntoConstraints = false

        let bottomConstraint = originalText.bottomAnchor.constraintEqualToAnchor(view.topAnchor)
        let leftConstriant = originalText.leftAnchor.constraintEqualToAnchor(view.leftAnchor)
        let rightConstraint = originalText.rightAnchor.constraintEqualToAnchor(view.rightAnchor)
        let heightConstraint = originalText.heightAnchor.constraintEqualToConstant(44)

        NSLayoutConstraint.activateConstraints([bottomConstraint,leftConstriant,rightConstraint,heightConstraint])
        view.layoutIfNeeded()



    }else if sender.state == .Ended{
        imageView.image = self.newImage
    }

subview 现在无法显示,如何解决这个问题?

这是未设置约束时模拟器的屏幕截图。 screenshot

最佳答案

底部等于顶部:

let bottomConstraint = originalText.bottomAnchor.constraintEqualToAnchor(view.topAnchor)

您的 View 很可能在屏幕外/ View 边界之外渲染。

将其更改为:

let topConstraint = originalText.topAnchor.constraintEqualToAnchor(view.topAnchor)

关于ios - 设置约束后 subview 无法显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35172500/

相关文章:

javascript - Cordova minifier 不会缩小浏览器平台

ios - Swift - captureOutput 未被执行

ios - 如何添加约束以右对齐 UITableViewCell 内的图像

ios - Facebook-ios集成(社交框架)无效权限

ios - 如何像 iOS Developer Library 一样设计 UIViewController 视觉布局流程

ios - SendBird - iOS : Cannot receive camera photo, 但可以接收存储的图像

ios - 完成处理程序如何返回错误的 ViewController?

ios - 如何使用 Core Data 制作索引列表 TableView ,iOS Dev

ios - 在 Swift Bridging Header 中包含 Google Analytics

ios - 识别选择了哪个tableviewcell并将值传递给另一个viewcontroller