0

ビューベースの新しいアプリケーションを作成しました。ここにいくつかのメインコードがあります:

// AppDelegate.h

@interface AppDelegate : UIResponder <UIApplicationDelegate>
{
    UINavigationController *navigationController;
    MIAPreferences *preferences;
}

@property (strong, nonatomic) UINavigationController *navigationController;
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) MIAPreferences *preferences;

// AppDelegate.m

@implementation AppDelegate

@synthesize window = _window;
@synthesize navigationController;
@synthesize preferences;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];

    // Override point for customization after application launch.
    UIViewController *rootController = [[HomeViewController alloc] initWithNibName:nil bundle:nil];

    navigationController = [[UINavigationController alloc]
                            initWithRootViewController:rootController];
    navigationController.navigationBar.hidden = YES;

    self.window = [[UIWindow alloc]
                   initWithFrame:[[UIScreen mainScreen] bounds]];

    _window.rootViewController = navigationController;
    [self.window makeKeyAndVisible];

    return YES;
}



// HomeViewController.m

-(IBAction)openLogin
{
    LoginViewController *view = [[LoginViewController alloc] initWithNibName:nil bundle:nil];

    // 1
    [self.navigationController presentViewController:view animated:YES completion:nil];

    // 2
    [self.navigationController pushViewController:view animated:YES];

    // 3
    [self presentViewController:view animated:YES completion:nil];
}

3 つのオプションはすべて EXC_BAD_ACCESS (コード = 2、アドレス =...) を返します。

これを解決する方法を理解するのを手伝ってもらえますか?

アップデート

この問題は、AddDelegate の読み込み中に設定された UIButton の外観が原因でした....しかし、最初のボタンは、私が読み込もうとしていた UIView にありました...それがクラッシュした理由です -.-"

4

2 に答える 2

1

次のいずれかを意味する可能性があります: (1) メモリを指していたポインタは問題ありませんでしたが、そのチャンクの割り当てが解除された、または (2) ポインタが破損しています。まだゾンビ モードを使用していない場合は、ゾンビ モードを使用して詳細情報を取得できます。XCode で Command、option、および I キーを押すと、画面がポップアップ表示されます。左側の [実行] オプションを選択し、次に [診断] を選択し、メモリ管理の下で [ゾンビ オブジェクトを有効にする] をオンにする必要があります。

于 2013-10-02T19:36:29.117 に答える
1

viewafterの値を確認しますinitWithNibName:initnib 名を使用するのnilは間違っているように見えます。また、nilView Controller をナビゲーション スタックにプッシュしようとしている可能性があります。

于 2013-10-02T19:36:59.053 に答える