2

我在 android 上创建了一些 appwidgets。我还想重新使用 appwidgets 的布局,这样我就可以在我的活动中进行控制,让它看起来一样。

所以工作正常我遇到的问题是我想让它的尺寸相同。

应用小部件图片

活动图片

这是小部件 xml

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:minHeight="72dp" android:initialLayout="@layout/sitewidget"
    android:minWidth="146dp" android:updatePeriodMillis="60000"
    android:configure="com.leaflabs.jaws_editor.SiteWidgetConfigure">
</appwidget-provider>

如您所见,appwidget 的大小与控件的大小并不完全相同。

问题是我如何得到它。我在控制 ctor 中指定了以下内容以使其大小相同但不正确

Resources r = context.getResources();

float width = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                146, r.getDisplayMetrics());

float height = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                72, r.getDisplayMetrics());

setLayoutParams(new LinearLayout.LayoutParams((int) width, (int) height));
4

1 回答 1

0

将 appwidget 的根布局设置为 FrameLayout(只是一个示例),并将您的控件作为其子级放置在 LinearLayout 中。然后将您的尺寸指定为该 LinearLayout。

appwidget-provider 中的尺寸不适用于确切的尺寸。

于 2011-05-01T21:01:54.220 回答