如何通过从另一个类调用方法来添加uibuttonitem

时间:2013-04-13 12:38:14

标签: xcode uicollectionviewcell uibuttonbaritem

由于应用程序的需要,我需要从集合视图的单元类调用一个方法。该方法位于详细视图控制器中,用于实现集合视图。

如果我在应用程序启动时从详细视图控制器的viewDidLoad完全调用该方法,一切顺利,按钮将按预期添加到导航栏中,但是当我从单元类调用相同的方法时,没有任何反应。我忘了什么吗?

这是代码

collectionViewCell.m

- (void) addButtonToNavigationBar {

DetailViewController *dvc = [[DetailViewController alloc]init]
[dvc implementButton];

}

DetailViewController.h

- (void) implementButton;

DetailViewController.m

- (void) implementButton {
addButton = [[UIBarButtonItem alloc] initWithTitle:@"Done"
                                             style:UIBarButtonItemStyleBordered
                                            target:self
                                            action:@selector(editTable)];
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonItemStyleBordered];
[self.navigationItem setRightBarButtonItem:addButton animated:YES];

感谢您的任何提示。

1 个答案:

答案 0 :(得分:1)

当你写DetailViewController *dvc = [[DetailViewController alloc]init];时,你正在创建一个新的控制器。它不是已存在的那个。

根据您的情况,您可以考虑让控制器从单元格中侦听NSNotification并在收到时调用implementButton