您好,我试图在masterviewcontoller中设置一个属性,该属性属于另一个viewcontroller,但它不会进入set方法。我已经使用Masterviewcontroller到Detailviewcontroller做到了这一点,并且工作正常。现在,我复制该代码,并尝试使用masterviewcontroller将其复制到名为AddNoteViewController的控制器中。相同的代码,但不会进入set方法。我对两个类都具有相同的重要性,谢谢您的帮助!
在调试中有效
步骤1 masterviewController.m
//MasterViewController.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDate *object = _objects[indexPath.row];
NSDate *kundnr = _kundnr[indexPath.row];
self.detailViewController.detailItem = object;
self.detailViewController.detailIdentity = kundnr;
self.addNoteViewController.AddNoteFtgnr = kundnr;
}
第二步DetailViewController.h
//DetailViewController.h
@property (strong, nonatomic) id detailItem;
@property (strong, nonatomic) id detailIdentity;
步骤3 DetailViewController.m
//DetailViewController.m
- (void)setDetailItem:(id)newDetailItem
{
if (_detailItem != newDetailItem) {
_detailItem = newDetailItem;
// Update the view.
[self configureView];
}
if (self.masterPopoverController != nil) {
[self.masterPopoverController dismissPopoverAnimated:YES];
}
}
- (void)setDetailIdentity:(id)newDetailItentity
{
if (_detailIdentity != newDetailItentity) {
_detailIdentity = newDetailItentity;
// Update the view.
[self configureView];
}
if (self.masterPopoverController != nil) {
[self.masterPopoverController dismissPopoverAnimated:YES];
}
}
现在,AddNoteviewController不起作用
第1步masterviewController.m (我认为可以)
//MasterViewController.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDate *object = _objects[indexPath.row];
NSDate *kundnr = _kundnr[indexPath.row];
self.detailViewController.detailItem = object;
self.detailViewController.detailIdentity = kundnr;
self.addNoteViewController.AddNoteFtgnr = kundnr;
}
第2步AddNoteViewController.h (我认为可以)
//AddNoteViewController.h
@interface AddNoteViewController : UIViewController
@property (strong, nonatomic) id AddNoteFtgnr;
@end
步骤3 AddNoteViewController.m (这是错误所在,根本不在这里介入)
//AddNoteViewController.m
-(void)setAddNoteFtgnr:(id)AddNoteFtgnr
{
//Code that sets the property
}
否决
我解决了我的问题。
在MasterviewController中,我必须初始化未发生的ViewController。
AddNoteViewController* addNoteViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"addNoteViewController"];
addNoteViewController.addNoteFtgNr = kundnr;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句