美文网首页iOS 开发iOS Developer
UICollectionViewController API详解

UICollectionViewController API详解

作者: Better_奔 | 来源:发表于2017-05-26 10:17 被阅读93次
    #import <UIKit/UIViewController.h>
    #import <UIKit/UICollectionView.h>
    #import <UIKit/UIKitDefines.h>
    NS_ASSUME_NONNULL_BEGIN
    
    @class UICollectionViewLayout;
    @class UICollectionViewController;
    //本身实现UICollectionViewDelegate,UICollectionViewDataSource
    
    NS_CLASS_AVAILABLE_IOS(6_0) @interface UICollectionViewController : UIViewController <UICollectionViewDelegate, UICollectionViewDataSource>
    
    //使用一个UICollectionViewLayout初始化界面
    - (instancetype)initWithCollectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
    - 
    //从nib中获取界面
    - (instancetype)initWithNibName:(nullable NSString *)nibNameOrNil bundle:
    (nullable NSBundle *)nibBundleOrNil NS_DESIGNATED_INITIALIZER;
    
    //从stordBoard中获取界面
    - (nullable instancetype)initWithCoder:(NSCoder *)aDecoder NS_DESIGNATED_INITIALIZER;
    
    //自带一个collectionView 但是self.view并不是collectionView
    @property (nullable, nonatomic, strong) __kindof UICollectionView *collectionView;
    
    //默认为yes,当viewWillAppear的时候所有选择的情况清除
    //但是当useLayoutToLayoutNavigationTransitions为yes时失效。
    @property (nonatomic) BOOL clearsSelectionOnViewWillAppear;
    
    /*为了使布局到布局的转场动画工作,navigation controller 的 root view controller 
    必须是一个 useLayoutToLayoutNavigationTransitions 设置为 NO 的 collection view 
    controller。当另一个 useLayoutToLayoutNavigationTransitions 设置为 YES 的 
    UICollectionViewController 实例被 push 到根视图控制器之上时,navigation controller 会用布局转场动画来
    代替标准的 push 转场动画。这里要注意一个重要的细节,根视图
    控制器的 collection view 实例被回收用于在导航栈上 push 进来的 collection 控制器中,
    如果你试图在 viewDidLoad 之类的方法中中设置 collection view 属性, 它们将不会有任何
    反应,你也不会收到任何警告。*/
    @property (nonatomic, assign) BOOL useLayoutToLayoutNavigationTransitions NS_AVAILABLE_IOS(7_0);
    
    //只读,自定义布局
    @property (nonatomic, readonly) UICollectionViewLayout *collectionViewLayout NS_AVAILABLE_IOS(7_0);
    
    //默认为yes,允许系统级别的从新排序,如果重写moveItemAtIndexPath则会进行手动排序
    @property (nonatomic) BOOL installsStandardGestureForInteractiveMovement NS_AVAILABLE_IOS(9_0);
    
    @end
    
    NS_ASSUME_NONNULL_END
    
    

    相关文章

      网友评论

        本文标题:UICollectionViewController API详解

        本文链接:https://www.haomeiwen.com/subject/hzvtfxtx.html