0

ビューコントローラーでコレクションビューを作成しました。デリゲート メソッドとデータソース メソッドのコードを記述しました。ここで、特定のインデックスでビューを開始したいと思います。2 としましょう。viewDidLoad メソッドで次のコードを記述しました。ただし、例外がスローされ、エミュレーターでアプリが終了します。

NSIndexPath *a=[NSIndexPath indexPathWithIndex:18];
[self.myFullScreenCollectionView scrollToItemAtIndexPath:a atScrollPosition:10 animated:NO];
4

2 に答える 2

3

次の有効な列挙値を割り当てる必要があります。

[self.myFullScreenCollectionView scrollToItemAtIndexPath:a atScrollPosition:10 animated:NO];

ここで、2 番目のパラメーターには、次の列挙型 UICollectionViewScrollPositionに属する整数を入力する必要があります。

typedef NS_OPTIONS(NSUInteger, UICollectionViewScrollPosition) {
    UICollectionViewScrollPositionNone                 = 0,

    // The vertical positions are mutually exclusive to each other, but are bitwise or-able with the horizontal scroll positions.
    // Combining positions from the same grouping (horizontal or vertical) will result in an NSInvalidArgumentException.
    UICollectionViewScrollPositionTop                  = 1 << 0,
    UICollectionViewScrollPositionCenteredVertically   = 1 << 1,
    UICollectionViewScrollPositionBottom               = 1 << 2,

    // Likewise, the horizontal positions are mutually exclusive to each other.
    UICollectionViewScrollPositionLeft                 = 1 << 3,
    UICollectionViewScrollPositionCenteredHorizontally = 1 << 4,
    UICollectionViewScrollPositionRight                = 1 << 5
};

これらの標準列挙値のいずれかを使用してみてください。これが役立つ場合があります。ここでは10は関係ないと思います。

于 2013-02-19T08:13:53.057 に答える
2

この作業を完了するのに苦労していましたが、CollectionView のデフォルトの方法を使用して完全に機能するようになりました。

ここでは、コレクション ビューをそれぞれのアイテム インデックスにスクロールする方法を示します。コレクション ビューをインデックス 3 の項目までスクロールするとします。コードは次のとおりです。

[self.collectionView scrollToItemAtIndexPath:[NSIndexPath indexPathForItem:3 inSection:0]
                            atScrollPosition:UICollectionViewScrollPositionNone
                                    animated:NO];

重要な要素はUICollectionViewScrollPositionNone列挙値でした。

于 2014-08-11T07:23:46.953 に答える