我正在使用SDWebImage以异步方式下载和缓存UIImageView中的图像,但我遇到了一些问题。
在我的项目中,我创建了一个pin标记,其中有一个包含UIImageView的对话框。
我面临的问题是来自网址的图片在完成下载后没有替换占位符图片。第一次点击图钉标记将始终显示占位符图像。
来自网址的图片只会在我第二次点击图钉标记后显示。
我想在第一次点击时显示网址中的图片我该怎么办?
这是我的代码
it("should navigate to add employee and add an employee.", function () {
var tableRowsBeforeAdd = element.all(by.repeater("employee in ec.employees")).count();
var button = element(by.className("btn"));
button.click();
expect(browser.getCurrentUrl()).toContain('add');
var jmbgInput = element(by.model("ec.employee.jmbg"));
jmbgInput.sendKeys("9988776655000");
var nameInput = element(by.model("ec.employee.name"));
nameInput.sendKeys("Test name");
var surnameInput = element(by.model("ec.employee.surname"));
surnameInput.sendKeys("Test surname");
var submit = element(by.buttonText("Save"));
submit.click();
expect(browser.getCurrentUrl()).not.toContain('add');
...
PS。请帮我解决这个问题,抱歉我的英文。
答案 0 :(得分:0)
请尝试使用此代码
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[thumbnail sd_setImageWithURL:[NSURL URLWithString:currentMarker.thumbnail] placeholderImage:[UIImage imageNamed:@"placeholder.png"] options:SDWebImageRefreshCached];
});
答案 1 :(得分:0)
[。retryFailed,.refreshCached]帮助解决了我的问题。
imageView.sd_setImage(with: picnicThumbnail, maxImageSize: 100000, placeholderImage: placeholderImage, options: [.retryFailed, .refreshCached], completion : nil)