1

UICollectionViewをスクロールするときに奇妙な問題に直面しています。そこにはセルがない空のビューが表示されています。UICollectionViewで2〜3回スクロールした後にセルが消える

私の細胞を不思議に隠したり、細胞を取り除いたりしますが、わかりませんが、解決策を見つけることができません。

私はSOからこれらのソリューションを試してみました:第一

を:すべての異なる方法で監督が、私の問題を解決することができないようUICollectionViewFlowLayoutのカスタムクラスを作成し、実行しようとしました。

第二:は私のセルサイズをreattributeして再計算する方法の下にしようとしました:私は、その後

-(BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds 
{ 
    return YES; 
} 

リンク:

QUE1:UICollectionView's cell disappearing

Que2:UICollectionView items disappear when scrolling with my own UICollectionViewFlowLayout subclass

案内してください。私はカスタムセルで簡単なコレクションビューで何が間違っています。

参照画像:スクロール前

:スクロール後 enter image description here

enter image description here

+0

[ツアー](https://stackoverflow.com/tour)から始めて、[最小限の完全かつ検証可能な例](https://stackoverflow.com/help/mcve)を作成する方法を学んでください。あなたの[Rubber Duck](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)に相談してください。 – mattsson

答えて

2

ここで私は自分の質問に答えるのです。

私はこの問題のために最後の2日以来立ち往生しています。誰かが私のような同じ問題を抱えたら、助けを得ることを願っています。

私はCollectionViewControllerを使用していて、そのControllerビューを自分の現在のコントローラに使用しているので、そのコレクションビューセルが消えています。

理由:原因ARCからは、私が 上から下にスクロールしていながら、セルを取得することdelegate & datasource接続し、そのcollectonビューことはできません解放します。

ソリューション:

私は2つの方法でこの問題を解決します。

第一:サービス& delegate & datasource接続損失によるJSON ParserクラスでVC私の現在ないでCollectionViewControllerことを作成します。

以下のコードで最も重要な部分はaddChildViewControllerです。これにより、デリゲート接続が解放されず、期待どおりに動作します。

UIStoryboard *mainStoryBoard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]]; 
CardListViewController *objCardListViewController = [mainStoryBoard instantiateViewControllerWithIdentifier:@"CardListViewController"]; 
objCardListViewController.view.frame = CGRectMake(0, 0,self.cardMainView.frame.size.width, self.cardMainView.frame.size.height); 
[self.cardMainView addSubview:objCardListViewController.view]; 
[self addChildViewController:objCardListViewController]; 

が、私の要件ごとに私は、私は、このコレクションビューを一般化する必要がある多くの場所 で、このコレクションビューを必要としていました。

だから私は、子コントローラを追加ContainerViewである第二の道のために行くと、私はこのリストを必要とする多くの場所としてそれを使用することができますので、私はコンテナビューでこのCollectionViewControllerを接続します。

奇妙ですが真です。

これは、同じ問題に直面している人に役立つことを願っています。

ありがとうございます。&ハッピーコーディング。

+0

これはまさに私の問題でした。これはもっと目に見えるはずです:) – Bartando

関連する問題