. Xib的VC跳转

Xib的跳转和纯代码的跳转优点区别,挑战时需要在初始化的VC中带上要跳到Xib的名称,如下为跳转方法

  loginSuccessViewController *_vc = [[loginSuccessViewController alloc]initWithNibName:@"loginSuccessViewController" bundle:[NSBundle mainBundle]];
  [self.navigationController pushViewController:_vc animated:YES];
  1. 纯代码的VC跳转
 loginSuccessViewController *_vc = [[loginSuccessViewController alloc]init];
 [self.navigationController pushViewController:_vc animated:YES];

iOS中xib与storyboard各种加载
xib 加载自定义View

UIView *view = [[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil][0];    

xib 加载自定义控制器

UIViewController *vc = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];

storyboard 加载自定义控制器

 UIStoryboard*storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
 UIViewController*vc = [storyboard instantiateInitialViewController];
UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"HomeViewController" bundle:nil];
    HomeViewController *homeVC = [storyBoard instantiateViewControllerWithIdentifier:@"HomeViewController"];
    HomeNavigationController *nav1 = [[HomeNavigationController alloc] initWithRootViewController:homeVC];
    nav1.tabBarItem.title = @"主页";

xib 加载自定义cell
复制代码
//第一步在控制器生命周期中注册

[self.msgTableView registerNib:[UINib nibWithNibName:@"RTJFMyMsgTableViewCell" bundle:nil] forCellReuseIdentifier:cellID];

//第二步在表格数据源代理中返回

 RTJFMyMsgTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
    if (cell == nil) {
        cell = [[RTJFMyMsgTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID];
    }
    return cell;

发表评论

邮箱地址不会被公开。 必填项已用*标注