0

我有 UICollectionView 和 Header。我有文本字段和图像。我确实尝试推送 segue 工作正常。但我需要调用 segue!任何帮助将不胜感激

头文件.h

@interface HeaderRV : UICollectionReusableView
@property (weak, nonatomic) IBOutlet UITextField *searchField;
@property (weak, nonatomic) IBOutlet UILabel *titleLabel;
- (IBAction)backButton:(id)sender;


@end

头文件.m

@implementation HeaderRV

- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
    // Initialization code
}
return self;
}
- (IBAction)backButton:(id)sender {

if ([self.searchField isEditing]) {
    [self.searchField resignFirstResponder];
}
else{
    //segue need to be here
}

}

@end
4

1 回答 1

0

我和你有同样的问题。这实际上非常棘手,因为您可以在一个空项目中完美地完成“在 collectionHeaderView 中执行 segue”(我尝试过)。我发现这个问题的关键是导航控制器的 RootVC 不是应用程序的初始 VC
您可以通过在 .m 文件中添加以下行来解决此问题,该文件显示导航控制器的 rootVC。

- (IBAction)next:(id)sender {
[theRootVCinNavigationController] *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"[your identifier]"];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:[theRootVCinNavigationController]];
[self presentViewController:navigationController animated:YES completion:nil];
}

参考:

  1. 如何将 UINavigationController 添加到呈现为 Modal 的 UIViewController
  2. https://developer.apple.com/Library/ios/documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/NavigationControllers.html (搜索“创建导航界面”)
于 2014-08-31T07:09:10.287 回答