如何沿 y 轴 iphone 向下移动按钮操作
Posted
技术标签:
【中文标题】如何沿 y 轴 iphone 向下移动按钮操作【英文标题】:how to move button action down along y axis iphone 【发布时间】:2013-04-11 07:48:42 【问题描述】:我有一个带有出口 btnAdd 的按钮操作,当它按下它时添加文本字段,我想将按钮操作也移动到文本字段下方,并且同样希望在按下按钮 BtnRemove 时恢复,
- (IBAction)btnAddTxtField:(id)sender
textField = [[UITextField alloc] initWithFrame:CGRectMake(76, ([txtFieldArray count] * 30), 191, 25)];
[textField setBorderStyle:UITextBorderStyleLine];
textField.font = [UIFont systemFontOfSize:20];
textField.placeholder = @"Enter text";
textField.autocorrectionType = UITextAutocorrectionTypeNo;
textField.keyboardType = UIKeyboardTypeDefault;
textField.returnKeyType = UIReturnKeyDone;
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
textField.delegate = self;
[myScrollview addSubview:textField];
[txtFieldArray addObject:textField];
CGRect frame = bottomView.frame;
frame.origin.y += textField.frame.size.height + 5;
btnAdd = [[UIButton alloc] initWithFrame:CGRectMake(210, ([txtFieldArray count] *30), 20, 20)];
frame.origin.y += btnAdd.frame.size.height +5;
bottomView.frame = frame;
textField.hidden = NO;
【问题讨论】:
【参考方案1】:修改frame
变量后,将其设置为动画块中的按钮:
[UIView animateWithDuration:0.2 animations:^
[btnAdd setFrame:frame];
completion:^(BOOL finished)
//Do something on completion if you want
];
显然,您可以将动画持续时间 (0.2) 更改为您想要的任何值。要反转它,请执行相同操作,设置 frame
CGRect 的 origin.y,并将其设置为上面动画块中的按钮。
【讨论】:
有助于知道错误是什么?刚刚修正了一个小错字,如果是这样的话。在(BOOL finished)
后面多了一个^
@QualityCoder 这对你有用吗?如果确实如此,请接受答案。谢谢。【参考方案2】:
[UIView animateWithDuration: delay: options: animations: completion:];
将是您的选择。您可以查看文档here。
【讨论】:
以上是关于如何沿 y 轴 iphone 向下移动按钮操作的主要内容,如果未能解决你的问题,请参考以下文章