Xamarin形成具有100%父容器宽度和自动高度以保持纵横比的图像

星空大师

是否可以Image采用其父容器的100%宽度,而实际上将整个图像放入该容器中而不进行裁剪,并自动调整高度以保留长宽比?

我在SO和Xamarin论坛上都读过类似的问题,但是显然,如果不实现自定义渲染器或手动计算代码中的正确大小,就无法做到这一点。但是要在代码中进行计算,您将需要图像尺寸或纵横比。对于那些都不为人所知的应用,这是一个问题。

在CSS方面,我正在寻找的解决方案类似于

width:100%; height:auto;

在我看来,为这种琐碎的任务实现定制渲染器是一个过大的选择,对Xamarin来说是一个巨大的尴尬。除非我理解不对。

星空大师

我无法找到解决此问题的纯XAML解决方案,因此决定使用ffimageloadingSuccess事件来查找已加载图像的原始宽度和高度,并从这些值中获取长宽比,进行存储,并在SizeAllocated事件中使用它来维护图像的宽高比,同时确保其宽度为父容器的100%。

样例代码:

    private void testImage_OnSuccess(object sender, CachedImageEvents.SuccessEventArgs e)
    {
        var image = sender as CachedImage;
        double width = e.ImageInformation.OriginalWidth;
        double height = e.ImageInformation.OriginalHeight;

        ratio = width / height; // store it in a variable

    }


    protected override void OnSizeAllocated(double width, double height)
    {
        base.OnSizeAllocated(width, height);

        if (this.Width > 0 && ratio != 0) // width of the parent container
            testImage.HeightRequest = this.Width / ratio;
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用最大 100% 的宽度和高度保持视频纵横比

来自分类Dev

如何保持 UIIMage 纵横比和侧边距宽度并防止高度超过父视图高度

来自分类Dev

如何在 PHP 中保持纵横比的同时将图像调整为固定宽度和高度?

来自分类Dev

= IMAGE(“ url”)具有指定的高度和自动宽度,以保持宽高比

来自分类Dev

以 % 保持 div 的纵横比,知道以 px 为单位的高度和宽度

来自分类Dev

CSS:图像具有“固定”的高度,最大宽度并保持宽高比?

来自分类Dev

CSS:图像具有“固定”的高度,最大宽度并保持宽高比?

来自分类Dev

保持具有定义宽度/高度响应的图像

来自分类Dev

如何使div具有自动的“父级的100%”高度?

来自分类Dev

使用jLayout保持容器的宽度和高度

来自分类Dev

具有100%宽度和固定高度的背景视频

来自分类Dev

保持具有百分比宽度的图像的纵横比并在保持纵横比的同时调整其他 div 的大小

来自分类Dev

扩展容器的高度和宽度在100%

来自分类Dev

从具有特定高度和宽度的图像中提取文本

来自分类Dev

使用 jQuery 预览具有显示高度和宽度的图像

来自分类Dev

在codeigniter中上传具有特定宽度和高度的图像

来自分类Dev

旋转时的图像不符合父容器的高度和宽度

来自分类Dev

纵横比技巧父级的 100% 高度

来自分类Dev

自动的图像宽度和高度标签

来自分类Dev

图像的高度和宽度自动吗?

来自分类Dev

具有动态高度图像的自动高度

来自分类Dev

视频 100% 父元素宽度,自动高度 (16:9)

来自分类Dev

如何将ImageView与底部对齐,填充其宽度和高度并保持其纵横比?

来自分类Dev

具有“自动”高度的100%宽度背景图片(2015)-跨浏览器

来自分类Dev

调整HTML视频的大小以适合父容器的高度*和*宽度

来自分类Dev

具有相同百分比的高度和宽度的图像将以不同的高度进行渲染

来自分类Dev

具有相同百分比的高度和宽度的图像将以不同的高度进行渲染

来自分类Dev

在具有高度自动和最小高度设置的父级中垂直对齐div?

来自分类Dev

具有自动宽度和自动高度的居中jQuery弹出对话框

Related 相关文章

  1. 1

    使用最大 100% 的宽度和高度保持视频纵横比

  2. 2

    如何保持 UIIMage 纵横比和侧边距宽度并防止高度超过父视图高度

  3. 3

    如何在 PHP 中保持纵横比的同时将图像调整为固定宽度和高度?

  4. 4

    = IMAGE(“ url”)具有指定的高度和自动宽度,以保持宽高比

  5. 5

    以 % 保持 div 的纵横比,知道以 px 为单位的高度和宽度

  6. 6

    CSS:图像具有“固定”的高度,最大宽度并保持宽高比?

  7. 7

    CSS:图像具有“固定”的高度,最大宽度并保持宽高比?

  8. 8

    保持具有定义宽度/高度响应的图像

  9. 9

    如何使div具有自动的“父级的100%”高度?

  10. 10

    使用jLayout保持容器的宽度和高度

  11. 11

    具有100%宽度和固定高度的背景视频

  12. 12

    保持具有百分比宽度的图像的纵横比并在保持纵横比的同时调整其他 div 的大小

  13. 13

    扩展容器的高度和宽度在100%

  14. 14

    从具有特定高度和宽度的图像中提取文本

  15. 15

    使用 jQuery 预览具有显示高度和宽度的图像

  16. 16

    在codeigniter中上传具有特定宽度和高度的图像

  17. 17

    旋转时的图像不符合父容器的高度和宽度

  18. 18

    纵横比技巧父级的 100% 高度

  19. 19

    自动的图像宽度和高度标签

  20. 20

    图像的高度和宽度自动吗?

  21. 21

    具有动态高度图像的自动高度

  22. 22

    视频 100% 父元素宽度,自动高度 (16:9)

  23. 23

    如何将ImageView与底部对齐,填充其宽度和高度并保持其纵横比?

  24. 24

    具有“自动”高度的100%宽度背景图片(2015)-跨浏览器

  25. 25

    调整HTML视频的大小以适合父容器的高度*和*宽度

  26. 26

    具有相同百分比的高度和宽度的图像将以不同的高度进行渲染

  27. 27

    具有相同百分比的高度和宽度的图像将以不同的高度进行渲染

  28. 28

    在具有高度自动和最小高度设置的父级中垂直对齐div?

  29. 29

    具有自动宽度和自动高度的居中jQuery弹出对话框

热门标签

归档