以编程方式在视图iOS的顶部添加按钮

时间:2015-10-12 04:42:47

标签: ios objective-c

我正在尝试编写应用程序的视图控制器。它有按钮和文本字段。我想将我的对象放入另一个视图(具有绿色背景的那个)。第一个Textfield应位于绿色视图的最顶部。

我知道如何让它成为中心。但是我需要从绿色视图的(0,0)处开始。

这是我到目前为止所做的事情:

// add UI View For TextFields and Login Button
UIView *utc = [[UIView alloc] init];
utc.backgroundColor = [UIColor greenColor];
utc.frame = CGRectMake(0, 0, screenWidth * 0.95, 170);
utc.center = CGPointMake(screenWidth * 0.50, screenHeight * 0.68);
[self.view addSubview:utc];

// add textfield1
UITextField *emailTextField = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, utc.frame.size.width, miniButtonWidth.height)];
emailTextField.center = CGPointMake(utc.frame.size.width * 0.5, utc.frame.size.height * 0.01);
emailTextField.borderStyle = UITextBorderStyleNone;
emailTextField.background = [UIImage imageNamed:@"textfieldLogIn.png"];
emailTextField.placeholder = @"Email Address";
emailTextField.backgroundColor = [UIColor clearColor];
[utc addSubview:emailTextField];

我在我的另一个Viewcontroller中使用相同的方式(配置框架和中心),设计看起来非常好,就在这种情况下,我无法将文本字段放在非常顶级。我是iOS的新手。

enter image description here

1 个答案:

答案 0 :(得分:1)

如果您希望emailTextField位于左上角,但仍然居中,而不仅仅是使用这些值进行初始化,而不是编辑中心。

UITextField *emailTextField = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, utc.frame.size.width, miniButtonWidth.height)];

emailTextField位于左上方,您不必将其居中,因为它已经是utc的宽度。