Мерцание в UICollection Полноэкранный вид ячеек после Kill, а затем перезапустить экземпляр - PullRequest
0 голосов
/ 12 апреля 2020

У меня полноразмерный вид UICollection с отображением видео (очень похоже на tiktok). Предположим, у меня есть 10 полноэкранных видов UICollection с вертикальной прокруткой [A, B, C….]. Запустите приложение. Я вижу коллекцию «А». Я убиваю экземпляр приложения и перезапускаю приложение. Я вижу либо C, E, F любого вида только за долю секунды до появления «A» Это мерцание не зависит от того, какой вид был у меня до убийства экземпляра. то есть, если бы я был в режиме «C», мерцание не обязательно показывает «C» в течение доли секунды Можете ли вы сказать мне, почему это происходит и как я могу это исправить?

Я использую StoryBoard. Ниже приведен мой код контроллера CollectionView

import UIKit

class HomeCollectionVC: UICollectionViewController,UICollectionViewDelegateFlowLayout {

    let labels = [] // Defined data here  
    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return labels.count
    }

    override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "HomeCell", for: indexPath) as? HomeCell else { return UICollectionViewCell() }
        let article = labels[indexPath.item]
        cell.populate(with: article)
        return cell
    }

     func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
            return CGSize(width: collectionView.frame.width, height: collectionView.frame.height)
    }
}

Пользовательская ячейка


import UIKit
import Kingfisher
import MarqueeLabel

class HomeCell: UICollectionViewCell {

//IBOUTLETS

    func convertCharge(x:Double)-> Int{
        let y = abs( x*0.7 )
        return Int(y)
    }


    func populate(with labels:Label){

        nameLabel.text = labels.name
        descView.text = labels.description
        shortDesc.text = labels.smallDesc
        let images = URL(string: labels.url)
           videoImage.kf.setImage(with: images)
       }   
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...