如何从xib(UITableViewCell)加载xib视图(UIViewController)

如何从xib(UITableViewCell)加载xib视图(UIViewController),uitableview,uiviewcontroller,xib,navigationcontroller,awakefromnib,Uitableview,Uiviewcontroller,Xib,Navigationcontroller,Awakefromnib,这是我已经拥有的 我已从XIB文件(UITableViewCell)加载自定义单元格 此自定义单元格包含按钮A和按钮B 创建了一个iAction来处理按钮 在MyTableView类(UIViewController)中加载上述XIB文件 现在,我想在单击的事件按钮上加载另一个视图(很可能是一个XIB文件),在iAction函数中,我已经尝试过这一点 // Where MyTableView is a class which loads this custom cell //

这是我已经拥有的

  • 我已从XIB文件(UITableViewCell)加载自定义单元格
  • 此自定义单元格包含按钮A和按钮B
  • 创建了一个iAction来处理按钮
  • 在MyTableView类(UIViewController)中加载上述XIB文件
现在,我想在单击的事件按钮上加载另一个视图(很可能是一个XIB文件),在iAction函数中,我已经尝试过这一点

    // Where MyTableView is a class which loads this custom cell
    // ModalView is a name of XIB File
    MyTableView *vc = [[MyTableView alloc] initWithNibName:@"ModalView" bundle:nil];
    [self.navigationController pushViewController:vc animated:YES];

但它在“self.navigationController”处出错,表示在MyTableViewCell类型的对象上找不到属性navigationController,我知道这是由于UITableViewCell类发生的,此行中的self指的是UIViewController对象,我应该使用awakeFromNib或类似的东西,但我找不到任何足够的例子让我实现我所需要的

好的,我已经解决了我的问题

在cellForRowAtIndexPath函数中,我获取XIB文件(UITableViewCell)以表示自定义设计的单元格,我创建了一个按钮,并从XIB视图中为其分配按钮,然后将iAction附加到该按钮上

    // SimpleTableCell is the XIB filename (UITableViewCell)
    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"SimpleTableCell" owner:self options:nil];
        cell = [nib objectAtIndex:0];


    UIButton *btn = [[UIButton alloc] init];
    btn = cell.btn;
    [btn addTarget:self action:@selector(smsBtnClicked:) 
                            forControlEvents:UIControlEventTouchUpInside];

这也是我的梦想;NSArray*nib=[[NSBundle mainBundle]loadNibNamed:@“ModalView”所有者:自选项:nil];UIView*nView=[nib objectAtIndex:0];但self不支持navigationcontroller或pushview等,不知道如何将视图嵌入顶部作为模式视图???并且在iAction事件中偏离路线UIViewController*viewController=[[UIViewController alloc]initWithNibName:@“ModalViewController”捆绑包:nil];[viewController SetModAltTransitionStyle:UIModAltTransitionStyleFlipHorizontal];[self-presentViewController:viewController动画:是完成:空];