2009-06-23 157 views
4

首先我對iPhone開發非常新奇,如果這很容易,我很抱歉。Iphone鍵盤透明

是否可以更改iPhone鍵盤上的透明度(如果可能,甚至是顏色)。

我知道你可以獲取到鍵盤視圖引用(鏈接提供) http://www.iphonedevsdk.com/forum/iphone-sdk-tutorials/7350-adding-subviews-custimize-keyboard.html

我發現這個計算器後這使我相信它可以通過動畫來完成。 iPhone UIView Animation Best Practice

但我不知道我會把這段代碼放在哪裏。

感謝您的任何想法和意見。一切友好表示讚賞:)

-TK

感謝您的意見傢伙。我不在乎它是否通過了應用商店。只是想嘗試做到這一點。再次感謝:)

+0

+1鏈接獲取鍵盤。感謝TK! – TamusJRoyce 2012-01-13 20:19:37

回答

12

這裏只有兩個可用的樣式公共API中:

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

但是你可以使用私有API方法來檢索鍵盤實現:

id keyboardImpl = [objc_getClass("UIKeyboardImpl") sharedInstance]; 

,並使其少不透明,

[keyboardImpl setAlpha:0.8f]; 

Tint it,

UIView *tint = [[UIView alloc] initWithFrame:[keyboardImpl frame]]; 
[tint setBackgroundColor:[UIColor colorWithRed:0.0f green:0.0f blue:1.0f alpha:0.3f]]; 
[tint setUserInteractionEnabled:NO]; 
[[keyboardImpl superview] insertSubview:tint aboveSubview:keyboardImpl]; 
[tint release]; 

甚至翻轉:

[[keyboardImpl window] setTransform:CGAffineTransformMakeScale(-1.0f, 1.0f)]; 

但所有會阻止你的應用程序獲得批准

0

如果你能做到這一點,蘋果將拒絕你的應用程序,因爲你正在侵入作爲操作系統一部分的對象(不是說我同意這一點,但蘋果公司非常關心人們改變他們的用戶界面的外觀)。

+0

感謝您的支持,但我距離提交應用程序還很遙遠。你認爲這是可能的嗎? – TEEKAY 2009-06-23 15:51:57

+0

保羅是對的。如果它使用黑客或使用私​​有API方法,Apple可能不會批准該應用程序 – lostInTransit 2009-06-23 16:09:34