我有2个视图作为导航控制器的一部分。
我使用公共方法为我的导航控制器创建了一个类,第一个视图上的某些操作将触发加载详细信息视图控制器。我正在导入详细信息视图控制器,但我的代码中没有任何工作。我知道正在调用该方法,因为我正在记录它。
我在这里做错了什么?
#import <UIKit/UIKit.h>
@interface NearbyController : UINavigationController
- (void) nextpage;
@end
#import "NearbyController.h"
#import "DetailView.h"
@implementation NearbyController
-(void) nextpage {
NSLog(@"working");
DetailView *nextView = [[DetailView alloc] init];
[self pushViewController:nextView animated:YES];
}
@end
答案 0 :(得分:0)
如果以编程方式初始化视图控制器,则应使用此init。
答案 1 :(得分:0)
如果您设置了故事板ID,则可以执行此操作
DetailView *nextView = (DetailView *)[self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewControllerID"];
[self pushViewController:nextView animated:YES];
如果您想从XIB加载,可以调用
DetailView *nextView = [[DetailView alloc] initWithNibName:@"MyDetailViewControllerID" bundle:nil];
[self pushViewController:nextView animated:YES];
希望它有所帮助!
答案 2 :(得分:0)
如果你正在使用故事板,你想要做的是在DetailViewViewController上的身份检查器中设置storyboard id
然后你想要实例化你的视图控制器:
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
DetailView *nextView =[sb instantiateViewControllerWithIdentifier:@"DetailViewViewController"];
/* your identifier is your storyboard id*/
sb = nextView.storyboard;
然后你应该能够推动你的视图控制器。 我还是新手,但我希望这会有所帮助!