我有一个带有小部件的应用程序,但我在小部件的布局上遇到了一些困难。
如果小部件应该看起来像一个图标并且像桌面上的任何其他图标一样在它下面有一个小文本标签的基本想法。
我找到了一个使用 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 文件,它允许我在选择小部件时更改图像。但是,我更喜欢图标的默认操作,其中图标周围的正方形变为橙色。
我将如何实现这两个效果 - 我知道这是有可能的,因为应用程序“短信未读计数”完全实现了我想要发生的事情!