2010-11-17 89 views

回答

12

簡短的回答是,沒有。您可以顯示的只有兩個鍵盤是正常鍵盤和提示樣式鍵盤。

有辦法破解,得到ui鍵盤並改變它的組成。我不會推薦這樣做,因爲它會1)可能會讓你的應用程序被應用程序商店拒絕,2)可能會在iOS版本下次出現時破壞它。

看起來像在鍵盤後面放置黑色或白色視圖應該適用於應用程序。在這種情況下,我會建議您尋找here以在鍵盤下方將黑色視圖製作爲動畫。

4

由於本規定上面你可以使用這兩個值中的一個:

[textView setKeyboardAppearance:UIKeyboardAppearanceAlert]; 
[textView setKeyboardAppearance:UIKeyboardAppearanceDefault]; 
4

這裏是代碼通過隱藏它來去除UIKeyboard背景。隨意修改它的着色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; 
      } 
     } 
    } 
} 

只要打電話[self removeKeyboardBackground]UIKeyboardDidShowNotification收到NSNotification後。用你想要的任何東西替換view.hidden=YES;來做任何你想要的背景視圖。

相關問題