【发布时间】:2010-01-26 14:41:19
【问题描述】:
我有一个带有小部件的应用,但我在小部件的布局上遇到了一些困难。
如果小部件应该看起来像一个图标并且在它下面有一个小文本标签,就像桌面上的任何其他图标一样。
我找到了一个使用 android:background 作为 TextView 并使用可绘制 XML 的示例:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#AA111111"/>
<padding android:left="5dp"
android:right="5dp"
android:bottom="1dp"
android:top="1dp" />
<corners android:radius="8dp" />
</shape>
但这并不能很好地工作,文本与桌面上的其他图标不一样,并且当您旋转手机时,部分文本被切掉了!
下一个问题是选择小部件,我使用 ImageButton 作为图标 - 将 android:background 设置为透明图像。我一直在使用另一个可绘制的 xml 文件,它允许我在选择小部件时更改图像。不过我更喜欢图标的默认操作,即图标周围的方块变成橙色。
我将如何实现这两个效果 - 我知道这是有可能的,因为应用程序“短信未读计数”完全实现了我想要发生的事情!
【问题讨论】:
-
我不同意这个答案。你绝对不应该尝试这样做。这里已经讨论过了:http://stackoverflow.com/questions/2651631/android-home-screen-widget-icon-label-style/2652961#2652961