海外での出費管理に役立つ iPad アプリを開発中です。
従来のマスター ビューと詳細ビューの分割ビューがあります。マスターには経費のリストがあり、詳細ビューには何があると思いますか? あらゆる費用の詳細!詳細のボタンをタップすると、フォーム シートのモーダル セグエを使用して新しいビューが読み込まれます。ユーザーは数値を挿入し、その数値が特定の値よりも大きい場合、マスターと詳細のラベルの色が変わります。この番号を保存すると、モーダル ビューを閉じてマスターに NSMessage を送信し、新しいラベルの色でテーブルをリロードし、以前に選択した詳細ビューをリロードします。iOS シミュレーターを使用するとすべてが機能しますが、iPad (iPad 2) でアプリを実行すると、すべてがフリーズし、次のメッセージが表示されます。
2013-11-09 21:52:04.763 IOUinTravel[562:60b] -[NSConcreteMapTableBackdropView:willChangeToGraphicsQuality:]: 認識されないセレクターがインスタンス 0x18b8fb00 に送信されました 2013-11-09 21:52:04.767 IOUinTravel[562:60b] * アプリの終了キャッチされない例外 'NSInvalidArgumentException' のため、理由: '-[NSConcreteMapTableBackdropView:willChangeToGraphicsQuality:]: 認識されないセレクターがインスタンス 0x18b8fb00 に送信されました' *First throw call stack: (0x2df5bf4b 0x387386af 0x2df5f8e7 0x2df5e1cb 0x2dead4d8 0x30c88b43 0x306cd7b5 0x306cd6e5 0x306cd7d5 0x306cd6e5 0x306da5c3 0x306da417 0x30785f67 0x30785d83 0x3077de85 0x3077d30d 0x3077d07d 0x3077d015 0x306ceda3 0x30355c6b 0x3035147b 0x3035130d 0x30350d1f 0x30350b2f 0x306c70c3 0x2df271cd 0x2df24b71 0x2df24eb3 0x2de8fc27 0x2de8fa0b 0x32b70283 0x30733049 0x9a3d5 0x38c40ab7) libc++abi.dylib: terminating withタイプ NSException のキャッチされない例外 (lldb)
私は本当にそれを解決する理由と方法を知りません。
私が使用した方法は次のとおりです。
フォーム シートのモーダル ビュー:
- (IBAction)saveNumber:(id)sender {
// Do some stuff here
[self dismissViewControllerAnimated:YES completion:^{ [[NSNotificationCenter defaultCenter] postNotificationName:@"reloadAfterExpenseCheck" object:self];}];
}
メイン ビュー:
- (void)reloadAfterExpenseCheck:(NSNotification *)notification
{
if ([[notification name] isEqualToString:@"reloadAfterExpenseCheck"]) {
NSLog(@"Messaggio ricevuto!");
NSLog(@"%@", self.indexPathToUpdate);
[self.tableView reloadData];
[self.tableView selectRowAtIndexPath:self.indexPathToUpdate animated:NO scrollPosition:UITableViewScrollPositionNone];
[self performSegueWithIdentifier:@"detailExpense" sender:self];
}
}
セグエ @"detailExpense" は、マスター テーブルのセルを選択してトリガーすると機能するため、どこに問題があるのか わかりません... iOS sim では機能します!
回答ありがとうございます。