【问题标题】:Image scaling and positioning in ImageView inside AppWidget layoutAppWidget布局内ImageView中的图像缩放和定位
【发布时间】:2019-06-16 12:50:13
【问题描述】:

注意问题已解决...这是位图本身的问题,而不是用于显示它的 XML 布局...请参阅this comment。除非您好奇,否则无需继续阅读!


当我将ImageView(AppWidget 布局内的注意事项)的内容设置为小于ImageView 的物理像素大小的位图时,我确定在过去(不确定多长时间)前)位图将被放大以适应...在我的情况下,较小的图像与ImageView的纵横比完全相同,所以这正是我想要的效果。

但最近我注意到这不再发生......位图位于左上角。我尝试在 XML 布局中设置各种属性,但没有任何效果。

例如我试过了:

android:scaleType="fitCenter"

android:scaleType="centerInside"

android:layout_gravity="center"

但图像仍然位于ImageView 中,与左上角齐平,右下角有间隙。

XML(ImageView 部分):

<ImageView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/imageView_port"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

ImageView 位于 XML 中定义为的父级中:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="@dimen/widget_margin"
    android:id="@+id/widget" >

将图像内容 URI 放入 appwidget 的代码:

remoteViews.setImageViewUri(imageViewId, uri);
appWidgetManager.partiallyUpdateAppWidget(appWidgetId, remoteViews);

它如何查找大小与小部件 imageview 匹配的图像:

它如何查找小于小部件 imageview 的图像:

我希望将较小的图像放大以适合 ImageView(它具有相同的纵横比,所以它会完美地适合)。

【问题讨论】:

  • 如果符合您的要求,您可以手动设置缩放位图
  • @Jasurbek 我真的不想在代码中缩放位图。肯定有办法通过 XML 做到这一点吗?确定这就是 android:scaleType 的用途吗?
  • 然后查看这个链接,希望对你有用,developer.android.com/reference/android/widget/…
  • @VictorR.Oliveira 感谢您提出这个建议...在创建示例 repo 的过程中,我生成了一个用于示例项目的位图,直到那时我才发现我是生成小于 imageview 的位图,但写入具有完整 imageview 尺寸的位图,用透明度填充间隙。因此位图实际上是图像视图的完整大小(不需要缩放),但实际内容比这小。一旦我修复了这个问题,XML 就可以在没有任何变化的情况下工作......像以前一样缩放较小的位图以适应 imageview。 D'OH。
  • 总是乐于提供帮助,即使是间接的;)

标签: android android-layout android-appwidget


【解决方案1】:

试试

    android:scaleType="centerCrop"

    android:scaleType="fitXY"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-18
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多