【问题标题】:iOS Animating two views, stacked on top of each otheriOS动画两个视图,彼此堆叠
【发布时间】:2017-03-24 12:30:41
【问题描述】:

我在为两个视图设置动画时遇到问题!

我有两个按钮可以从底部向上滑动不同的视图。

而我想做的是:

我正在像这样为RegisterView 制作动画:

class ViewController: UIViewController {

@IBOutlet weak var registerViewHeight: NSLayoutConstraint!
@IBOutlet weak var registerView: UIView!
@IBOutlet weak var registerViewBottomContraint: NSLayoutConstraint!

override func viewDidLoad() {
        super.viewDidLoad()

        self.registerViewBottomContraint.constant = -registerViewHeight.constant

    }

@IBAction func registerButtonPressed(_ sender: AnyObject) {
        self.registerViewBottomContraint.constant = 0
        UIView.animate(withDuration: 0.4, animations: {
            self.view.layoutIfNeeded()
        })

    }

首先:如何正确地将堆叠视图相互叠加? 第二:有没有办法轻松地从按钮转换为视图?

非常感谢:)

【问题讨论】:

    标签: ios swift xcode animation uiview


    【解决方案1】:

    您可以像这样 [Objective-C] 为视图设置动画:

    CGRect viewFrame = self.registerView.frame;
    self.registerView.frame = CGRectMake(viewFrame.origin.x, viewFrame.origin.y + viewFrame.size.height, viewFrame.size.width, viewFrame.size.height);
    self.registerView.alpha = 0.0;
    
    [UIView animateWithDuration:ANIMATION_DURATION
                          delay:0
                        options:UIViewAnimationOptionCurveEaseOut
                     animations:^{
                         self. registerView.frame = viewFrame;
                         self. registerView.alpha = 1.0;
                     }
                     completion:^(BOOL finished) {
    
                     }];
    

    【讨论】:

      猜你喜欢
      • 2021-03-20
      • 2021-03-23
      • 1970-01-01
      • 2019-10-19
      • 2021-10-02
      • 1970-01-01
      • 1970-01-01
      • 2015-08-11
      • 1970-01-01
      相关资源
      最近更新 更多