【发布时间】:2014-09-04 14:49:35
【问题描述】:
在应用程序中导航时,标题有一个徽标,该徽标会根据部分加载标题图像。为了测试,我现在总是使用相同的图像文件,但是......调用相同的方法来更改 uiimageview 的图像(将 uiimageview 作为参数传递)我有时只得到一半的图像被渲染......我想首先,可能是框架或边界将其切断,但将 clipstobounds、backgroundcolor 设置为蓝色,并记录框架/边界表明,据我所知,情况并非如此。这种情况偶尔会发生,因此相同的代码有时会加载完整的图像,有时只加载一半。
这是我正在使用的代码:
rightLogo.Image = null;
rightLogo.ClipsToBounds = false;
rightLogo.BackgroundColor = UIColor.Blue;
UIImage imageTest = UIImage.FromFile (path);
if (imageTest != null)
imageView.Image = imageTest;
根据日志告诉我,图像视图的框架/边界始终设置为 90,图像的高度为 180(对于视网膜),内容模式设置为缩放纵横比...
添加到这个: 我发现将其设置为不缩放图像将始终显示完整图像。想知道这是否是比例方面适合/完整(都尝试过)导致的问题。我已经在运行 ios7 的 iPad 3 和运行 ios6 的 iPad 2 以及模拟器上进行了测试。
【问题讨论】:
-
图片在文件系统中是如何存储的?
-
图像在运行时下载(除非文件已经存在)使用
File.Open (filePath, FileMode.Create);打开文件流 -
您是否考虑过使用第三方库,例如github.com/rs/SDWebImage?它几乎没有内置选项来处理下载图像时的中断。
-
唯一的问题是,一旦下载它就不会再打开流了,但是即使使用同一个文件,有时也偶尔只加载一半......
标签: ios uiimageview xamarin.ios uiimage