细节"/>
iOS开发相关小细节
UIBarButtonItem是自定义导航栏的按钮
先创建UIButton 然后通过下面的方式创建
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:button];
UINavigationItem
@private
NSString *_title;
NSString *_backButtonTitle;
UIBarButtonItem *_backBarButtonItem;
NSString *_prompt;
NSInteger _tag;
id _context;
UINavigationBar *_navigationBar;
UIView *_defaultTitleView;
UIView *_titleView;
UIView *_backButtonView;
NSArray *_leftBarButtonItems;
NSArray *_rightBarButtonItems;
NSArray *_customLeftViews;
NSArray *_customRightViews;
BOOL _hidesBackButton;
BOOL _leftItemsSupplementBackButton;
UIImageView *_frozenTitleView;
深拷贝和浅拷贝之分 深拷贝copy 浅拷贝 retain
@property 是一个属性访问声明,括号内支持一下几个属性
1 getter = getterName,setter = setterName 设置setter 于getter 的方法名
2 readwrite,readonly 设置可访问的级别
3 assing setter方法直接赋值 不进行任何retain操作 为了解决原类型于循环引用问题
4 retain setter方法对参数进行release旧值在retain新值 所有实现都是这个顺序
5 copy setter方式进行Copy操作 与retain处理流程一样 先将旧值release,再Copy出新的对象 这是为了减少上下文的依赖而引入的机制
6 nonatamoic非原子型访问 不加同步 多线程访问会提高性能 注意如果不加此属性 则默认是两个访问方法都为原子型事物访问 锁会被加到对象实例级
更多推荐
iOS开发相关小细节
发布评论