0

我有一个小部件,显示了此处显示的两个 TextView:

小部件屏幕截图

我想知道的是,调整小部件大小时是否可以调整文本大小?基本上使小部件可以调整大小。有任何想法吗?

4

2 回答 2

1

您需要实现小部件 XML 以填充父级,然后启用调整大小。

例如

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
</LinearLayout>

android:resizeMode="vertical"将您的小部件标记为可调整大小<appwidget-provider ... />

现在在较新的 Android 版本上,当您调整屏幕上的小部件大小时,它将调整大小以填充。

对于锁屏小部件,您必须进行更多设置才能使小部件可调整大小。看看App Widget 大小指南

这是相关部分

当小部件托管在锁屏上时,框架会忽略 minWidth、minHeight、minResizeWidth 和 minResizeHeight 字段。如果小部件也是主屏幕小部件,则仍需要这些参数,因为它们仍在家庭中使用,但出于锁定屏幕的目的,它们将被忽略。

锁屏小部件的宽度始终填满提供的空间。对于锁屏小部件的高度,您有以下选项:

  • 如果小部件未将自身标记为可垂直调整大小(android:resizeMode="vertical"),则小部件高度将始终为“小”:
    • 在纵向模式的手机上,“小”定义为显示解锁 UI 时剩余的空间。
    • 在平板电脑和横向手机上,“小”是基于每个设备设置的。
  • 如果小部件将自身标记为可垂直调整大小,则小部件高度在显示解锁 UI 的竖屏手机上显示为“小”。在所有其他情况下,小部件的大小以填充可用高度。
于 2013-02-22T21:38:29.950 回答
0

除了@Kirk 的回答:如果您在画布(Canvas.drawText(....))上绘制文本,那么如果您调整小部件的大小,小部件将自动调整文本的大小。不幸的是,应用小部件只能在 Android Honeycomb 及更高版本中调整大小。

于 2013-02-22T21:47:09.837 回答