如何从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文件
// 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动画:是完成:空];