我正在尝试创建一个跨平台的应用程序。
所以我有一个 1000x200 的图像,我想将它定位为背景上的图像。
我尝试计算真实的图像大小,以使其在每个屏幕上都完美。因为钛以某种神奇的方式调整图像大小并缩放它们......
menuBottomImageView.toImage().width
在 iOS 上工作正常,我得到 1000px,但在 android 上我得到的不是真实尺寸,只有显示的尺寸,这不是我需要的。
有没有办法为两个系统获取文件的真实尺寸?
我没有设置 Android 来测试它,但在 iOS 上我发现你可以使用:
var imgBlob = menuBottomImageView.toBlob(),
imgWidth = imgBlob.width,
imgHeight = imgBlob.height;
使用toBlob()
也比使用快得多toImage()
。根据文档,这在 Android 上是受支持的,但是文档说很多事情并不总是有效。
对于 Android 没有更好的方法,如果你使用 getWidth() 方法,它会给出对象中提到的 createImageView() 的宽度。最好的方法是您的方法 menuBottomImageView.toImage().width 。
如果您要求的控制器toImage()
已添加并加载到窗口上,那么只有它会给您适当的尺寸。