如果用户点击tableview中的行(3个选项),我有很多关于显示视图的选项。 我像这样开始新的ViewController:
ImageViewNIB *dest = [[ImageViewNIB alloc] init];
[self presentViewController:dest animated:YES completion:nil];
当它出现时,我想点击按钮关闭它。我从NIB文件中显示了新视图。
@interface ImageViewNIB : UIViewController
@property (strong, nonatomic) IBOutlet UIImageView *imageView;
@property (strong, nonatomic) IBOutlet UIBarButtonItem *close;
@end
#import "ImageViewNIB.h"
@interface ImageViewNIB ()
@end
@implementation ImageViewNIB
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (IBAction)backBtnUserClicked:(id)object {
[self.navigationController dismissViewControllerAnimated:YES completion:^{
NSLog(@"KONCZE");
}];
}
@end
从笔尖看:
所有内容都以编程方式启动并创建其中的UINavigationBar和按钮。 NaviationBar中的按钮是UIBarButtonItem类型,但我使用“.M”类中的方法将其与IB连接。它没有显示NSLOG,并且视图在录制时不会关闭。如何以编程方式而不是STORYBOARD创建这个segue?
答案 0 :(得分:1)
您没有UINavigationController
。因此,您应该将dismiss方法发送给self:
[self dismissViewControllerAnimated:YES completion:^{
NSLog(@"KONCZE");
}];