.NET MAUI Android端网络图片适配问题:拉伸异常及线程报错
.NET MAUI Android端图片尺寸适配问题
我在.NET MAUI中遇到了Android端图片尺寸适配的问题:从URL加载图片后需要进行拉伸适配,此前找到的类似问题解决方案仅适用于iOS端。请问如何针对Android端实现对应的适配效果?
尝试的代码与遇到的错误
我编写了以下获取图片尺寸的代码:
public partial Size GetImageSize(string urlImage) { URL url = new URL(urlImage); Bitmap bmp = BitmapFactory.DecodeStream(url.OpenConnection().InputStream); return new Size(bmp.Width, bmp.Height); }
运行时触发了如下错误:
Android.OS.NetworkOnMainThreadException: ''
我知道这是因为在主线程中执行了网络操作,但不清楚如何在主线程外执行该操作,同时不影响iOS端的功能。
适配需求与当前问题
我将从URL获取的图片放入Grid时,并未明确定义宽高(因为图片尺寸各不相同),核心需求是避免裁剪(比如正方形图片)。我尝试了两种Aspect模式:
- 使用
AspectFill:图片填满整个宽度,但高度会被裁剪,这是我想要避免的; - 使用
AspectFit:图片尺寸过小,周围留有空白,不符合需求。
当前使用Fill模式的效果:
期望实现的效果:
内容的提问来源于stack exchange,提问作者KoMa
相关产品推荐
相关产品推荐

