2010-04-28 18 views

Odpowiedz

29

Objective-C:

CGRect someRect = CGRectMake(0.0, 0.0, 100.0, 30.0); 
UITextField* text = [[UITextField alloc] initWithFrame:someRect]; 
UIView* view = [[UIView alloc] initWithFrame:someRect]; 

[view addSubview:text]; 

Swift:

let someFrame = CGRect(x: 0.0, y: 0.0, width: 100.0, height: 30.0) 

let text = UITextField(frame: someFrame) 
let view = UIView(frame: someFrame) 
view.addSubview(text) 
+0

Jakie są ramy? – galactikuh

+0

@galactikuh co masz na myśli? Ramki to prostokąty, w których będą umieszczane Twoje widoki. – Skie

+0

jeśli jest to ważna część odpowiedzi, wydaje się, że tworzenie ramki powinno być zawarte w kodzie. – galactikuh

238

Jeśli chcesz jeden wygląda jak pole tekstowe w interfejsie konstruktora:

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 200, 300, 40)]; 
textField.borderStyle = UITextBorderStyleRoundedRect; 
textField.font = [UIFont systemFontOfSize:15]; 
textField.placeholder = @"enter text"; 
textField.autocorrectionType = UITextAutocorrectionTypeNo; 
textField.keyboardType = UIKeyboardTypeDefault; 
textField.returnKeyType = UIReturnKeyDone; 
textField.clearButtonMode = UITextFieldViewModeWhileEditing; 
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;  
textField.delegate = self; 
[self.view addSubview:textField]; 
[textField release]; 
+8

'contentVerticalAlignment' jest kluczowym elementem tutaj –

+0

+1 @ NatanielSymer: Spędziłem 1 godzinę, aby to zrozumieć, dopóki nie zobaczyłem twojego komentarza tutaj ... :) Dzięki .. –

+1

wielkie dzięki @ioshero to naprawdę dobra odpowiedź ... IMHO Myślę, że powinien być oznaczony jako poprawna odpowiedź. fakt, że pokryłeś wiele różnych parametrów UITextField jest po prostu świetny. Jeszcze raz dziękuję za odpowiedź. – Jiraheta

1

w Swift 2.0:

let sampleTextField = UITextField(frame: CGRectMake(20, 100, 300, 40)) 
sampleTextField.placeholder = "Enter text here" 
sampleTextField.font = UIFont.systemFontOfSize(15) 
sampleTextField.borderStyle = UITextBorderStyle.RoundedRect 
sampleTextField.autocorrectionType = UITextAutocorrectionType.No 
sampleTextField.keyboardType = UIKeyboardType.Default 
sampleTextField.returnKeyType = UIReturnKeyType.Done 
sampleTextField.clearButtonMode = UITextFieldViewMode.WhileEditing; 
sampleTextField.contentVerticalAlignment = UIControlContentVerticalAlignment.Center 
sampleTextField.delegate = self 
self.view.addSubview(sampleTextField) 
2
UITextField *mycooltext=[[UITextField alloc]initWithFrame:CGRectMake(10, 70, 50, 50)]; 
[email protected]"I am cool"; 
[self.View addSubView:mycooltext]; 
Powiązane problemy