2009-06-23 158 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