Problem: Reloaded gecached UIImageView in einem UICollectionViewCell (während oder Umschalten zwischen UICollectionViewController Scrollen) nicht der richtige contentMode erhalten.Konserve Seitenverhältnis des Bildes in UICollectionViewCell
Ich versuchte mit .sizeToFit() auf die UIImageView und das Zurücksetzen von .contentMode = UIViewContentMode.ScaleAspectFit bei jedem Laden, aber das half nicht.
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> MyCollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("myCell", forIndexPath: indexPath) as! MyCollectionViewCell
if (indexPath.item < self.the_array?.count){
if (images_cache[self.the_array![indexPath.item].src!] != nil){
// calling this here doesn't work
cell.myImage.contentMode = UIViewContentMode.ScaleAspectFit
// calling this here doesn't work either
cell.myImage.sizeToFit()
cell.myImage.image = images_cache[self.the_array![indexPath.item].src!]! as UIImage
}
else{
if let url = NSURL(string: "https:" + (self.the_array![indexPath.item].src)!), data = NSData(contentsOfURL: url) {
let the_image = UIImage(data: data)
cell.myImage.image = the_image
images_cache[self.the_array![indexPath.item].src!] = the_image!
}
}
}
return cell
}