3

私のアプリには、4つのボタンがあります。4つのボタンのうち2つを押すと、アプリがフリーズします。奇妙なことに、エラーは表示されず、デバッガウィンドウには何も表示されません。私はiOS開発に不慣れなので、これを修正する方法がわかりません。アプリがクラッシュし始める前にアプリは正常に動作し、コードを変更しなかったため、何が起こっているのかわかりません。誰かが私を助けることができますか?

ボタンが押された場所のコードは次のとおりです。正常に動作しているので、なぜ突然動作しないのかわかりません。

- (IBAction)showMapView:(id)sender
{
    P2OViewController *pvc = [[P2OViewController alloc]init];
    [self.navigationController pushViewController:pvc
                                         animated:YES];
}

- (IBAction)showTableView:(id)sender
{
    TableViewController *tableView = [[TableViewController alloc]init];
    [self.navigationController pushViewController:tableView
                                         animated:YES];
}

そこで、グローバルブレークポイントを追加しましたが、何も起こりません。アプリはまだ実行中であり、デバッガーナビゲーターはアプリがまだ実行中であると言います。ですから、アプリはフリーズしていて、クラッシュしていないと思います。これを修正する方法がわかりません。

4

2 に答える 2

1

IBActionsとコードの間の接続を確認することをお勧めします。このような原因不明のエラーは、IBの接続が欠落しているか正しくないことが原因である可能性があります。

于 2012-12-31T18:48:28.237 に答える
1

メモリの問題のようです。ボタンをクリックするたびにp20viewcontrollerオブジェクトとtableviewcontrollerオブジェクトを作成するのではなく、プログラムの最初のどこかでこれらのオブジェクトを1回だけ作成してみてください。

ボタンクリックには、次の画面に移動するためのコードのみを含める必要があります。ボタンクリックごとに新しいオブジェクトを作成する必要はありません。

于 2013-01-01T14:28:56.440 に答える