2016-11-08 12 views
1

UICollectionViewに問題があり、セルの間隔がありました。私は間隔を変更する方法を考え出し、私のポートレートビューでは完全に動作しますが、私のランドスケープビューでは動作しません。私はこれを差別化しようとしました:セルの間隔を動的に変更するUICollectionView

//set minimum spacing 
if(UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)){ 

    layout.minimumLineSpacing = 100.0f; 
} 
else{ 

    layout.minimumLineSpacing = 40.0f; 
} 

残念ながら私はポートレートから風景に切り替えると変わりません。どのように私はこれを達成することができます誰も教えてくれますか?

+0

あなたは、あなたがしたい場合は、あなたのコレクションビューをリロードする必要があると思うのに役立ちますデータソースを呼び出すか、コレクションビューのデリゲートメソッド – Rajat

+0

これはあなたの質問に答える必要があります:[http://stackoverflow.com/questions/18988028/how-do-i-define-the-size-of-a-collectionview-on-rotate ](http://stackoverflow.com/questions/18988028/how-do-i-define-the-size-of-a-collectionview-on-rotate) –

+0

問題は、セルのサイズではなくむしろ間隔その風景の中に私は各セルを単独で持っていなければならず、次のセル –

答えて

0

を試してみて、私は私が疑われるとして、それは正確だった、それを考え出しました。スペーシングを独自の関数に作成し、その方向に基づいて値を返すようにコードを移動しました。コードは以下の通りである:ヘルプみんなのため

-(CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*) 
collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section{ 

if(UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)){ 

    NSLog(@"Changed to landscape Spacing"); 
    return 100.0f; 
} 
else{ 

    return 40.0f; 
} 

} 

おかげで、あなたの入力は私が時々誰かと問題を議論、solitionを見つける助け、私は

+0

layout.minimumLineSpacingとcollectionView:レイアウト代行コールの両方を使用しないでください。それは古いものを上書きします。 – kaushal

+0

'loadView'関数で' layout.minimumLineSpacing = 40.0f'という行を取り出すことを意味していますか?私は新しい機能を追加する前にそれを取り出したことを確認しました –

0

この

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
    [yourcollectionView performBatchUpdates:nil completion:nil]; 
} 
+0

:/ ...私はすでにこの関数を呼び出しているはずです。私は私の細胞のサイズを変更するときに私はそれを使用します。上記のコードは、それ自身の関数ではなく、呼び出される関数内にあります。 ' - (void)loadView'は最小間隔を返す独自の関数に' layout.minimumLineSpacing'を設定する必要がありますか? –

+0

これは、方向を見ながらコレクションビューを再読み込みするためのものです。 – KKRocks

+0

はい、わかりました。デバイスを回転させると、** CollectionView **のサイズが変更されますが、**間隔**ではなく** Cells **になります。たぶん私はコードを行間を返す独自の関数に移動しようとする必要がありますか? –

関連する問題