0

我有一个带有 xib、m 和 h 文件的普通视图控制器。我希望在加载视图时自动调用方法。在我当前的 M 文件中,我有代码调用另一个视图,这只是为了查看 checkIfLogged 方法是否有效。当应用程序加载时,它不会调用其他视图,而是保留在自己的视图中。如何在视图加载时调用 checkIfLogged 方法?实际上,如果可能的话,我更希望在加载视图之前调用该方法。

这是我的 M 文件。

#import "ViewController.h"
#import "LoginView.h"

@interface ViewController ()

@end

@implementation ViewController
-(void) viewDidLoad{
    [self checkIfLogged];
}

- (void) checkIfLogged
{
    LoginView *loginView = [[LoginView alloc] initWithNibName:@"LoginView" bundle:nil];
    [loginView setModalPresentationStyle:UIModalPresentationFormSheet]; //you can change the way it is presented
    [loginView setModalTransitionStyle:UIModalTransitionStyleCoverVertical]; //you can change the animation
    [self presentViewController:loginView animated:YES completion:nil]; //show the modal view


}//end checkIfLogged

@end

这是我的 H 文件

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

-(IBAction)checkIfLogged;

@end
4

1 回答 1

2

首先,在您的实现[super viewDidLoad];中作为第一行调用。viewDidLoad

其次,您不应该尝试从viewDidLoad. 此时,您的 UIViewController 的视图不是视图层次结构的一部分。viewDidAppear:而是显示视图控制器。

于 2013-09-30T21:58:04.060 回答