1,一般的 UIViewController 在viewDidLoad方法中self.view的frame为(0,20,320,460),在viewWillApplear方法中self.view的frame将会根据storyboard中的布局,进行改变frame,如果有navigationbar 44和tabbar 49时,则frame变为(0,0,320,367),坐标系发生变化。
2,iphone5适配
3, IOS 中 UITabbarController 在 viewDidLoad方法中的self.view的frame是(0, 0, 320, 480)
4,当子视图超过父视图的边界后,超出的部分将不会相应相关事件。比如,我们自定义UITableViewCell的时候将subView添加在cell的contentView上,但是没有设置contentView的frame。subView将超出父视图的边界,将会不相应相关的事件。 因此,我们一般在设置如下:
4,UITableViewCell的加载过程:
1,重复调用 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 获取每个cell的高度
2,调用获取cell的方法:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 来获取cell
3,在获取cell的方法中将调用自定义cell的:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 在此方法中将调用UI初始化方法:- (void)_initSubViews
4,最后当:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 执行完后将会调用自定义cell中的:- (void)layoutSubviews
注意:当使用xib文件创建时,就不需要- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 方法和相关的- (void)_initSubViews 方法,因此第3步省略。
5,iOS中点击button,显示高亮效果:
6,iOS的状态栏显示网络访问菊花效果:(使用即可出现,如果想停止,将其设置为NO即可)
7,当使用xib创建控制器时,哪怕不使用initWithNib方法,使用自定义的初始化方法,xib也可以起作用。
2,iphone5适配
#define iPhone5 [UIScreen instancesRespondToSelector:@selector(currentMode)]? CGSizeEqualToSize(CGSizeMake(640, 1136), [UIScreen mainScreen].currentMode.size) : NO;
3, IOS 中 UITabbarController 在 viewDidLoad方法中的self.view的frame是(0, 0, 320, 480)
4,当子视图超过父视图的边界后,超出的部分将不会相应相关事件。比如,我们自定义UITableViewCell的时候将subView添加在cell的contentView上,但是没有设置contentView的frame。subView将超出父视图的边界,将会不相应相关的事件。 因此,我们一般在设置如下:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
[self_initSubViews];
self.contentView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
self.selectionStyle = UITableViewCellSelectionStyleNone;
}
return self;
}
4,UITableViewCell的加载过程:
1,重复调用 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 获取每个cell的高度
2,调用获取cell的方法:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 来获取cell
3,在获取cell的方法中将调用自定义cell的:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 在此方法中将调用UI初始化方法:- (void)_initSubViews
4,最后当:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 执行完后将会调用自定义cell中的:- (void)layoutSubviews
注意:当使用xib文件创建时,就不需要- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 方法和相关的- (void)_initSubViews 方法,因此第3步省略。
5,iOS中点击button,显示高亮效果:
button.showsTouchWhenHighlighted = YES;
6,iOS的状态栏显示网络访问菊花效果:(使用即可出现,如果想停止,将其设置为NO即可)
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
7,当使用xib创建控制器时,哪怕不使用initWithNib方法,使用自定义的初始化方法,xib也可以起作用。