您的位置:首页 > 其它

关于xib的两个简单使用方法

2015-01-20 00:00 471 查看
刚开始学iOS的时候大多是接触的是StoryBoard,不过这个的确很适合初学者。但是做了些项目之后发现,如果仅仅只掌握了StoryBoard的话是完全不够的。因为一旦多人协作,或者某一个页面需要复用的话,我们很有必要创建一个能够单独分离出来处理的view,这时候还是很有必要学一下xib的基本用法的。这里只是简单的说明两个xib的用法。

1,首先创建一个带有StoryBoard的工程,然后创建一个view的xib




给这个新的xib命名为view1




我们会发现工程文件多了一个xib




我们在view1的xib中增加一个label,并且设置了背景色方便区分




这时候回到工程里面的viewController.m,加上这段代码

- (void)viewDidLoad {
    [super viewDidLoad];
    
    NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"View1" owner:self options:nil];
    UIView *v = 170 views;
    CGRect r = v.frame;
    v.frame = r;
    [self.view addSubview:v];
}

看下运行后的效果:




上面的是第一个方法,来看下第二种方法

同样是新建一个view2的xib,新建方法同上。我们在view2的xib放一个位置不同的label并且换一种背景色





下面的就要仔细看了,我们先把view2的xib的file’s Owner的class改成ViewController





接着





最后,我们再回到viewController.m,加上这段代码(包含上一次的使用xib的代码,大家自己区分下)
- (void)viewDidLoad {
    [super viewDidLoad];
    
    NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"View1" owner:self options:nil];
    UIView *v = 170 views;
    CGRect r = v.frame;
    v.frame = r;
    [self.view addSubview:v];
    
    [[NSBundle mainBundle] loadNibNamed:@"View2" owner:self options:nil];
    r.origin.y += r.size.height;
    self.view2Xib.frame = r;
    [self.view addSubview:self.view2Xib]; 
}

看下通过两个不同的方法使用xib的效果




从这篇文章学习来的,http://www.cocoachina.com/industry/20140529/8603.html,感觉还不错,就收藏了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: