调整UIView的大小并同时更改子视图位置

时间:2012-11-07 09:45:26

标签: objective-c ios4 uiview uibutton

我已经在界面生成器的ViewController中放置了一个带有UIButton的UIView作为子视图。我还有一个UITextField,每当我输入内容时,我都会触发一个动作巫婆。当我输入内容时,我的视图应该变高,按钮应该移动到视图的底部。但是当我在文本字段中键入第一个字母时,视图会调整大小但按钮不会移动。当我输入第二个字母时,按钮会移动。可能是因为视图已经调整大小。我的问题是如何在文本字段中键入第一个字母时同时使用它。

我的代码:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyPressed:) name:UITextFieldTextDidChangeNotification object:textField];

- (void)keyPressed:(NSNotification*)notification{

    view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 200.0);
    button.frame = CGRectMake(button.frame.origin.x, (view.frame.size.height-button.frame.size.height), button.frame.size.width, button.frame.size.height);

}

2 个答案:

答案 0 :(得分:0)

尝试实现此方法:

-(void)textFieldDidBeginEditing:(UITextField *)textField
{ 
 // put your action here 
}

答案 1 :(得分:0)

通过将按钮放在视图的底部来解决它。然后当我调整视图大小时,按钮跟在底部。我不需要以编程方式移动按钮。