【问题标题】:Setting programmatically the pixel size of a remote ImageVIew?以编程方式设置远程 ImageVIew 的像素大小?
【发布时间】:2012-03-16 22:18:51
【问题描述】:

假设我的布局包含

<ImageView
        android:id="@+id/my_id"
        android:layout_width="123px"
        android:layout_height="345px"
        android:padding="0dip"
        android:scaleType="fitXY" />

在 AppWidget 中使用并通过 RemoteViews 设置。如何以编程方式设置宽度和高度(以像素为单位)(覆盖上述 xml 中的 123 和 345)?

(动机:这个图像视图显示了一个在运行时通过文件 URL 设置的动态 png 文件。如果上面的 layout_width 和 layout_height 设置为 wrap_content,则图像会按设备的密度()缩小显示。设置以像素为单位的精确宽度和高度解决了问题,但文件大小发生了变化,我不知道如何以编程方式设置它)。

【问题讨论】:

    标签: android android-widget android-imageview android-appwidget


    【解决方案1】:

    你可以用不同的方式来做。将 ImageView 放入 LinerLayout 并将 ImageView 的 layout_width 和 layout_height 设置为“fill_parent”。然后改变LinearLayout的宽高。

    我假设您了解应用小部件的大小规则。

    【讨论】:

    • 谢谢 Mbt925。如何在 RemoteViews 上设置 LinearLayout 的像素大小?顺便说一句,我使用的是 API 8。(是的,我熟悉小部件大小规则)。
    • 通过 SetInt 方法:codeviews.setInt(viewId, methodName, value)。使用 LinearLayout 的 setMinimumHeight 方法设置高度和宽度 ... .
    • 谢谢 Mbt925。试了一下,得到了这个运行时错误(在 API 8 下运行):W/AppWidgetHostView(430): android.widget.RemoteViews$ActionException: view: android.widget.LinearLayout can't use method with RemoteViews: setMinimumWidth(int)。还有其他想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-18
    • 1970-01-01
    • 2012-09-08
    • 2020-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多