0

我想点击_transitButton调用onTransitButtonDidClick移动_rightView。问题是按钮不能按照我的设置self.transitButton.frame = CGRectMake(0, 0, 30, 20);

更新:

_transitButton原帧(0,280,30,20) 的结果是,按钮从原帧移动到(0,0,30,20),但很快又回到原点。为什么它回去了?

为什么以及如何解决这个问题?

- (IBAction)onTransitButtonDidClick:(id)sender {
    [UIView animateWithDuration:0.3
                      delay:0.0
                    options:UIViewAnimationCurveEaseInOut
                 animations:^{
                     [_rightView setFrame:CGRectMake(40,0,320,548)];
                     [_transitButton setFrame:CGRectMake(0,0,30,20];
                 }
                 completion:nil];
}
4

1 回答 1

3

您在 xib 中使用自动布局,并且约束将按钮保持在原位。对于动画,它似乎可以工作,因为没有为动画评估约束。

所以要么关闭这个xib的AUTOLAYOUT,要么修改适当的约束。

(我用一个小示例应用程序尝试了这个,就是这样。)

于 2012-11-18T10:14:30.643 回答