Gibt es eine Möglichkeit, eine schwarze Tastatur zu bekommen? Die Standardtastatur ist bläulich. Und die Alert-Tastatur ist halbtransparent schwarz. Ich habe mich gefragt, ob es möglich ist, die Tastatur schwarz zu machen, z. B. nicht transparent. Oder muss ich eine schwarze Ansicht hinter der Tastatur aufziehen, um den Transparenzeffekt zu verringern?
Antworten
Zu viele Anzeigen?Die kurze Antwort lautet: Nein. Die einzigen beiden Tastaturen, die Sie anzeigen können, sind die normale und die Alarm-Tastatur.
Es gibt Möglichkeiten, die Benutzeroberfläche zu hacken, die Tastatur zu übernehmen und ihre Zusammensetzung zu ändern. Ich würde nicht empfehlen, dies zu tun, wie es 1) wahrscheinlich machen haben Ihre App aus dem App Store abgelehnt und 2) wahrscheinlich brechen das nächste Mal eine iOS Revision kommt herum.
Es scheint, dass eine schwarze oder weiße Ansicht hinter der Tastatur für die Anwendung funktionieren sollte. In diesem Fall würde ich empfehlen, schauen aquí für eine Möglichkeit, die schwarze Ansicht unterhalb der Tastatur zu animieren.
Hier ist der Code zum Entfernen der UIKeyboard
Hintergrund, indem er ihn ausblendet. Ändern Sie es, um den Hintergrund zu färben. UIKeyboard
:
-(NSArray*)subviewsOfView:(UIView*)view withType:(NSString*)type{
NSString *prefix = [NSString stringWithFormat:@"<%@",type];
NSMutableArray *subviewArray = [NSMutableArray array];
for (UIView *subview in view.subviews) {
NSArray *tempArray = [self subviewsOfView:subview withType:type];
for (UIView *view in tempArray) {
[subviewArray addObject:view];
}
}
if ([[view description]hasPrefix:prefix]) {
[subviewArray addObject:view];
}
return [NSArray arrayWithArray:subviewArray];
}
-(void)removeKeyboardBackground{
for (UIWindow *keyboardWindow in [[UIApplication sharedApplication] windows]) {
for (UIView *keyboard in [keyboardWindow subviews]) {
for (UIView *view in [self subviewsOfView:keyboard withType:@"UIKBBackgroundView"]) {
view.hidden=YES;
}
}
}
}
Einfach anrufen [self removeKeyboardBackground]
nachdem Sie eine NSNotification
pour UIKeyboardDidShowNotification
. Sie können mit der Hintergrundansicht machen, was Sie wollen, indem Sie die view.hidden=YES;
mit dem, was Sie möchten.