[英]loadView() no called
我有一個UIViewController用定義的loadView方法調用另一個視圖控制器。 我一直在嘗試許多選項而未成功解決未調用的loadView方法的問題。
任何幫助表示贊賞。
謝謝。 MArcos
呼叫者UIViewController
#import "MyAlbumViewController.h"
@interface ViewController : UIViewController
@end
履行
#import "ViewController.h"
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidAppear:(BOOL)animated{
UIViewController*albumVC = [[MyAlbumViewController alloc] init];
[self.navigationController pushViewController:albumVC animated:YES];
}
@end
叫做UIViewController
@interface MyAlbumViewController : NIToolbarPhotoViewController <NIPhotoAlbumScrollViewDataSource>
@end
履行
#import "MyAlbumViewController.h"
@implementation MyAlbumViewController
- (void)loadView{
[super loadView];
self.photoAlbumView.dataSource = self;
// Set the default loading image.
self.photoAlbumView.loadingImage = [UIImage imageWithContentsOfFile:
NIPathForBundleResource(nil, @"NimbusPhotos.bundle/gfx/default.png")];
self.title = NSLocalizedString(@"Loading...", @"Navigation bar title - Loading a photo album");
[self loadAlbumInformation];
}...
loadView
的想法是完全覆蓋該方法,而不是調用super
您正在執行的操作正是viewDidLoad
方法的用途,無論您是從nib文件還是其他文件加載它都沒關系
我引用您在ViewController.m
的帖子
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
我用以下方法推動視圖控制器:
[self.navigationController pushViewController:albumVC animated:YES];
我只是更改為:
[self presentViewController:albumVC animated:YES completion:nil];
UIViewController導航控制器
navigationController在視圖控制器層次結構中最接近的祖先,它是導航控制器。 (只讀)
@property(非原子的,只讀的,保留的)UINavigationController * navigationController討論如果接收者或其祖先之一是導航控制器的子代,則此屬性包含擁有的導航控制器。 如果視圖控制器未嵌入在導航控制器內部,則此屬性為nil。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.