Ich habe ein UITextField
programmgesteuertes UITextField
Erstellen der Eigenschaft a des viewController erstellt. Ich muss die Tastatur mit der Rückkehr und der Berührung auf dem Bildschirm schließen. Ich konnte den Bildschirm berühren lassen, aber das Drücken der Eingabetaste funktioniert nicht.
Ich habe gesehen, wie man es mit Storyboards macht und indem man das UITextField
Objekt direkt zuweist und initialisiert, ohne es als Eigenschaft zu erstellen. Möglich zu tun?
.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UITextFieldDelegate>
@property (strong, atomic) UITextField *username;
@end
.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.view.backgroundColor = [UIColor blueColor];
self.username = [[UITextField alloc] initWithFrame:CGRectMake(100, 25, 80, 20)];
self.username.placeholder = @"Enter your username";
self.username.backgroundColor = [UIColor whiteColor];
self.username.borderStyle = UITextBorderStyleRoundedRect;
if (self.username.placeholder != nil) {
self.username.clearsOnBeginEditing = NO;
}
_username.delegate = self;
[self.view addSubview:self.username];
[_username resignFirstResponder];
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"touchesBegan:withEvent:");
[self.view endEditing:YES];
[super touchesBegan:touches withEvent:event];
}
@end