public void UpdateIconImage(CipherViewCell cipherCell) { if (_currentTask != null && !_currentTask.IsCancelled && !_currentTask.IsCompleted) { _currentTask.Cancel(); } var cipher = cipherCell.Cipher; var iconImage = cipherCell.GetIconImage(cipher); if (iconImage.Item2 != null) { IconImage.SetImageResource(Resource.Drawable.login); IconImage.Visibility = ViewStates.Visible; Icon.Visibility = ViewStates.Gone; _currentTask = ImageService.Instance.LoadUrl(iconImage.Item2).DownSample(64).Into(IconImage); IconImage.Key = iconImage.Item2; } else { IconImage.Visibility = ViewStates.Gone; Icon.Visibility = ViewStates.Visible; Icon.Text = iconImage.Item1; } }