2010-11-24 51 views
5

我试图通过应用主题而未成功更改KeyboardView的默认样式。我的目标SDK是1.6和Xperia X10。有人可以帮忙吗?将主题应用于KeyboardView

/res/vaules/style.xml:

<style name="myTheme" parent="android:Theme"> 
    <item name="android:keyboardViewStyle">@style/aa</item> 
</style> 
<style name="aa" parent="android:Widget.KeyboardView"> 
    <item name="android:keyTextSize">50sp</item> 
    <item name="android:keyTextColor">#FF123456</item> 
    <item name="android:keyPreviewHeight">150dp</item> 
    <item name="android:labelTextSize">25sp</item> 
</style> 

的Manifest.xml:

<application android:theme="@style/myTheme" 
.. 

奇怪的是,当我在布局手动应用的样式,它的工作原理。

+0

有趣的是,你在这里的代码绝对看起来是正确的。你四年前得到这个定律了吗?你确认'KeyboardView(Context context,AttributeSet attrs)'至少仍然有效吗? – Anonsage 2015-01-25 09:43:13

回答

0

因为键盘定义克服了KeyboardView的缺陷,所以您不像任何其他组件那样设计KeyboardView。一些提示:

不要打扰文本大小:组件找到完美的大小,以完美地适应内部按键。

要定义键大小和其他属性,请在键盘xml定义上执行此操作。见this guide

最终,this可能也会帮助你。