使用带有自定义按钮的主详细信息应用程序的 segue。
Posted
技术标签:
【中文标题】使用带有自定义按钮的主详细信息应用程序的 segue。【英文标题】:Using the segue from master detail application with custom button. 【发布时间】:2013-03-17 00:59:25 【问题描述】:所以,我有一个主从应用程序。到目前为止,在启动时创建了一个对象并将其添加到主列表中,详细视图也可以正常工作。
我想做的是让用户通过按下按钮将对象添加到主列表。不过,我不需要新的视图,我想为此部分使用标准的详细视图。
当用户点击“添加”按钮时,应该创建一个新对象,然后进入该对象的详细视图。我想,“嘿,为什么不使用标准的 segue 呢?” 所以我在 MasterView 中添加了一个 Bar Button Item。
这是我来自 MasterViewController.m 的代码:
-(IBAction)addNewItem:(UIStoryboardSegue *)segue
if([[segue identifier] isEqualToString:@"showDetail"])
CoolItem *newItem;
NSDate *today = [NSDate date];
newItem = [[CoolItem alloc]initWithDate:today];
[self.dataController addCoolItemWithItem:newItem];
DetailViewController *detailViewController = [segue destinationViewController];
detailViewController.coolItem = newItem;
“showDetail”是主从模板附带的标准segue的标识符。
结果:什么都没有!该方法不会在按钮点击时调用。
我已确保我的按钮已连接到此方法,(但它确实在文档大纲中显示为展开 segue)。
关于哪里出了问题有什么想法吗?
【问题讨论】:
您是否尝试使用添加按钮将另一个项目添加到 tableview 并将新项目从 table view 转到详细视图? 【参考方案1】:我不确定出了什么问题,但我能够使用以下代码实现所需的功能:
-(void)viewDidload
...
self.navigationItem.rightBarButtonItem =
[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
target:self
action:@selector(Add:)];
-(IBAction)Add:(id)sender
// Create the new item and set it as active
...
[self performSegueWithIdentifier: @"SegueName" sender:self];
希望这会有所帮助 亚龙
【讨论】:
以上是关于使用带有自定义按钮的主详细信息应用程序的 segue。的主要内容,如果未能解决你的问题,请参考以下文章