これは多分簡単なことですが、まだこれについてのイン・アンド・アウトを学んでいますが、私は利用可能な答えでこの1つの検索を使い果たしました。presentModalViewController UIViewController内のUITableViewからの親の
私はいくつかの要素が表示されたUIViewControllerを持っています。そのような要素の1つはUITableViewです。 UITableViewは、それ自身のクラスを持っており、テーブルビューに関しては正常に動作しているviewWillAppear
- (void)viewWillAppear:(BOOL)animated
{
UITableView *insideTableView = [[UITableView alloc] init];
tableView.delegate = insideTableView;
tableView.dataSource = insideTableView;
}
すべてUIViewControllersに割り当てられています。今日、いくつかの追加を試しています。そのうちの1つは、そのテーブルビュー内のセル選択に関する新しいビューポップアップです。
私のtableViewクラス内で、私は次のようしている:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"Cell Pressed, Present View");
PopupView *popupView = [[PopupView alloc] initWithNibName:@"PopupView" bundle:nil];
popupView.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:popupView animated:YES];
}
は、今では細かい呼び出される、のNSLogによって検証、しかしビューが表示されません。私は、問題が、PopUp
をTableViews Parentの上に表示する必要があるという事実に関連していることを知っています。
このインスタンスで正しく呼び出す方法がわかりません。
popupViewがnilでないことを確認しましたか? – freespace
はい、私はブレークポイントでこれを確認しただけでなく、上のコードを親ビューにコピーし、新しいビューがロードされたことを確認するためのボタンを作成しました。親から呼び出されたときに正常に動作します。この問題は、TableViewが親ではないという事実に関連しています。そして、 'self.parentViewController'を呼び出すことは、このインスタンスのためにも動作しません。 –
セットアップを理解しているかどうかを見てみましょう: 'UITableView'がデリゲートを持っている' UIViewController'を持っています(デリゲートのクラスは何ですか? – freespace