Как получить метод конструктора и как его вызвать при создании экземпляра? - PullRequest
0 голосов
/ 28 мая 2011

Я создал приложение на основе навигации.В этом я создал MyTableViewController, используя uiviewcontroller.class.

#import "RootViewController.h"

#import "MyTableViewController.h"


@implementation RootViewController


- (void)viewDidLoad
{
    [super viewDidLoad];

    MyTableViewController *tableViewController = [[MyTableViewController alloc] init];

}

@end


#import "MyTableViewController.h"


@implementation MyTableViewController

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];

    NSLog(@"sedfsdsd");
}

@end

. Я не хочу показывать представление при создании экземпляра.Я хочу вызвать метод конструктора.Я не знаю, как это сделать.Пожалуйста, помогите мне.

Ответы [ 2 ]

1 голос
/ 28 мая 2011

@ Кэролайн описала очень хорошо.

Обычный метод вашего класса мог бы служить вашей цели, и вы можете назвать это что-то ViewContruction и определить его в вашем MyTableViewController классе.

-(void) ViewContruction
{
   //Create all your views here

   //Add that to the self.view of your controller
}

Вызовите вышеуказанную функцию явно на экземпляре вашего контроллера представления.

1 голос
/ 28 мая 2011

Простое создание экземпляра UIViewController не загружает представление.

Если у вас есть что-то вроде [self.view addSubview:tableViewController.view], то при выполнении этого оператора будет выполняться viewDidLoad.

Однако, если этоприложение на основе навигации, затем вам нужно нажать на контроллер просмотра, чтобы увидеть его, вместо добавления подпредставления, как указано выше.

Например:

        Settings *settingsController = [[Settings alloc] initWithNibName:@"Settings" bundle:nil];
        settingsController.contentSizeForViewInPopover = settingsController.view.frame.size;
        [self.navigationController pushViewController:settingsController animated:YES];
        [settingsController release];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...