2017-03-21 5 views
1

Ich habe eine iOS-App, in Xcode mit Objective-C gebaut, veröffentlicht und im App Store.Xcode App Tastatur sieht gestreckt

Ich habe festgestellt, dass die Tastatur in meiner App scheint ein bisschen größer als die Standardtastatur anderer Apps auf meinem Handy, zum Beispiel die integrierte App App Apple Mail.

enter image description here

Hat dieses Verhalten jemand gesehen?

Gibt es einen Grund für den Größenunterschied, und gibt es eine Möglichkeit, meinen Code oder meine App zu ändern, um die "richtige" Standardtastatur in meiner App zu bekommen?

Mein Code für die Texteingabefelder in meiner app ist wie folgt ...

usernameField = [[UITextField alloc] initWithFrame:CGRectZero]; 
    usernameField.borderStyle = UITextBorderStyleLine; 
    usernameField.backgroundColor = [UIColor whiteColor]; 
    usernameField.font = [UIFont fontWithName:@"HelveticaNeue-Light" size:16]; 
    usernameField.placeholder = @"username"; 
    usernameField.autocapitalizationType = UITextAutocapitalizationTypeNone; 
    usernameField.autocorrectionType = UITextAutocorrectionTypeNo; 
    usernameField.keyboardType = UIKeyboardTypeASCIICapable; 
    usernameField.returnKeyType = UIReturnKeyDone; 
    usernameField.spellCheckingType = UITextSpellCheckingTypeNo; 
    usernameField.clearButtonMode = UITextFieldViewModeWhileEditing; 
    usernameField.textAlignment = NSTextAlignmentCenter; 
    usernameField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
    usernameField.delegate = self; 
    [self.scrollview addSubview:usernameField]; 

    passwordField = [[UITextField alloc] initWithFrame:CGRectZero]; 
    passwordField.borderStyle = UITextBorderStyleLine; 
    passwordField.backgroundColor = [UIColor whiteColor]; 
    passwordField.font = [UIFont fontWithName:@"HelveticaNeue-Light" size:16]; 
    passwordField.placeholder = @"password"; 
    passwordField.autocapitalizationType = UITextAutocapitalizationTypeNone; 
    passwordField.autocorrectionType = UITextAutocorrectionTypeNo; 
    passwordField.keyboardType = UIKeyboardTypeDefault; 
    passwordField.returnKeyType = UIReturnKeyDone; 
    passwordField.spellCheckingType = UITextSpellCheckingTypeNo; 
    passwordField.clearButtonMode = UITextFieldViewModeNever; 
    passwordField.textAlignment = NSTextAlignmentCenter; 
    passwordField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
    passwordField.clearsOnBeginEditing = YES; 
    passwordField.secureTextEntry = YES; 
    passwordField.delegate = self; 
    [self.scrollview addSubview:passwordField]; 
+8

Dies liegt wahrscheinlich daran, dass Sie Ihre App nicht "kompatibel" mit iPhone 6/6s/7 und 6 +/6s +/7 + gemacht haben. Ohne iOS wird Ihre App, einschließlich Tastatur und Statusleiste, in iPhone 5-Auflösung gerendert und auf einen größeren Bildschirm skaliert. Alles, was Sie tun müssen, ist Start-Screens für größere iPhones und alles sollte funktionieren. – Losiowaty

+0

@Losiowaty Sie haben zuerst geantwortet, aber einen Kommentar hinzugefügt und nicht eine Antwort, daher kann ich Ihnen die Antwort nicht gutschreiben! – Richard

+0

Ich mache das nicht für Kredit :) – Losiowaty

Antwort

2

Verwenden Einführung richtige Größe Bilder, dieses Problem zu beheben. Die Anwendung wird entsprechend dem Startbild skaliert und gibt Ihnen die richtige Auflösung.

Startbilder sollten in den folgenden Größen verwendet werden.

  1. iPhone 4s - 640 * 960
  2. iPhone 5,5s - 640 * 1136
  3. iPhone 6,7 - 750 * 1334
  4. iPhone 6 + 7 + - 1242 * 2208

Danke

+0

Das sieht aus, um es zu beheben. Vielen Dank! – Richard