我想平滑过渡checkBox和noteButton就像textLabel一样。我尝试了这段代码但不起作用:
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
if (self.editing == NO) {
self.checkBox.frame = CGRectMake(50, 0, 50, 50);
self.noteButton.frame = CGRectMake(100, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
} else {
self.checkBox.frame = CGRectMake(10, 0, 50, 50);
self.noteButton.frame = CGRectMake(50, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
}
[super setEditing:editing animated:animated];
}
答案 0 :(得分:0)
尝试在
中进行- (void) layoutSubviews {
if (self.editing == NO) {
self.checkBox.frame = CGRectMake(50, 0, 50, 50);
self.noteButton.frame = CGRectMake(100, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
} else {
self.checkBox.frame = CGRectMake(10, 0, 50, 50);
self.noteButton.frame = CGRectMake(50, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
}
}
答案 1 :(得分:0)
这应该有用。
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
[UIView beginAnimations:@"ResizeAnimation" context:NULL];
[UIView setAnimationDuration:0.7f];
if (self.editing == NO) {
self.checkBox.frame = CGRectMake(50, 0, 50, 50);
self.noteButton.frame = CGRectMake(100, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
} else {
self.checkBox.frame = CGRectMake(10, 0, 50, 50);
self.noteButton.frame = CGRectMake(50, 0, 50, 50);
self.textLabel.frame = CGRectMake(95,0, 213, 48);
}
[UIView commitAnimations];
[super setEditing:editing animated:animated];
}