小部件TextView调整大小

时间:2013-02-22 21:25:39

标签: android android-widget resize textview

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

widget screenshot

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

2 个答案:

答案 0 :(得分: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 sizing guidelines

为例

以下是相关部分

  

当小部件托管在锁屏上时,框架会忽略   minWidth,minHeight,minResizeWidth和minResizeHeight字段。如果一个   widget也是主屏幕小部件,仍然需要这些参数   因为他们仍然在家里使用,但他们将被忽略的目的   锁屏。

     

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

     
      
  • 如果窗口小部件没有将自身标记为可垂直调整大小(android:resizeMode =“vertical”),则窗口小部件高度将始终为   “小”:   
        
    • 在纵向模式的手机上,“小”被定义为显示解锁UI时剩余的空间。
    •   
    • 在平板电脑和风景手机上,每个设备都会设置“小”。
    •   
  •   
  • 如果小部件将自身标记为可垂直调整大小,则小部件高度在显示解锁UI的纵向电话上显示为“小”。   在所有其他情况下,窗口小部件的大小将填充可用的高度。
  •   

答案 1 :(得分:0)

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