【问题标题】:rounded corners while extending subview beyond superview's bounds将子视图扩展到父视图边界之外时的圆角
【发布时间】:2015-07-18 09:54:19
【问题描述】:

我正在设计一个特定的动画。图像缩放超出范围,缩小到适当的大小,然后下降。你可以看到我到目前为止得到的是这个视频:https://vid.me/i1bx

我想要达到的效果是第一个imageView(灰色的)有圆角。将第一个 imageView 的 cornerRadiusclipsToBounds 设置为 true 可以做到这一点,但会禁用第二个 imageView(firstScaleImageView) 超出第一个 imageView 边界的缩放效果。

是否可以有圆角并且还能够将 imageView 扩展到 superview 的范围之外?

这是我的代码:

   @IBAction func goButtonpressed(sender: UIButton) {
        firstScaleImageView = UIImageView(frame: bounceFrame)
        firstScaleImageView.image = UIImage(named: "1")
        firstScaleImageView.transform = CGAffineTransformScale(firstScaleImageView.transform, 0, 0)
        firstImageView.addSubview(firstScaleImageView)

        UIView.animateWithDuration(0.4, delay: 0, usingSpringWithDamping: 0.7, initialSpringVelocity: 10, options: UIViewAnimationOptions.CurveLinear, animations: {
            self.firstScaleImageView.transform = CGAffineTransformIdentity
            }, completion: {_ in
                self.firstImageView.clipsToBounds = true
        })
    }
    @IBAction func backButtonPressed(sender: UIButton) {
        UIView.animateWithDuration(0.3, animations: {
            self.firstScaleImageView.transform = CGAffineTransformTranslate(self.firstScaleImageView.transform, 0,  self.firstImageView.frame.height)
            }, completion: {_ in
                self.firstImageView.clipsToBounds = false
                self.firstScaleImageView.removeFromSuperview()
        })
    }

【问题讨论】:

    标签: ios animation core-animation uiviewanimation cornerradius


    【解决方案1】:

    尝试将clipsToBounds 设置为false(我认为拐角半径不需要它)。

    【讨论】:

    • clipsToBounds 或 maskToBounds 需要为真。两者都不能解决问题。请注意,当第二个 imageView 下降时,clipsToBounds 必须为 true。不知道还有什么办法
    • clipsToBoundsclip 所有子视图...顺便说一句,您可以使用 2 个不同的 UIImageViewUIView 包裹,谁是clipsToBounds 将在动画进行时为 NO,在动画完成时为 YES,然后“放下”第二个 imageView
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-13
    • 2021-04-20
    • 1970-01-01
    相关资源
    最近更新 更多