Objective CとXCode 4.2を使用したiPhone開発は初めてです。現在、UITableViewController のインスタンス化に成功しており、マルチレベルの json データ ツリーをトラバースできます。ただし、リーフ ページの UI を確立するのに問題があります。これまでのコード スニペットをお見せしましょう。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
int row = [indexPath row];
NSString * currentrow = [NSString stringWithFormat:@"%d.",row];
NSDictionary * item = [dataArray objectForKey:currentrow];
NSDictionary * children = [item objectForKey:@"children"];
if(children != nil)
{
uinavTableViewController *childView = [[uinavTableViewController alloc] init];
childView.dataArray = children;
[self.navigationController pushViewController:childView animated:YES];
}
else
{
uinavMenuItem * childView = [[uinavMenuItem alloc] init];
//uinavSecondViewController * childView = [[uinavSecondViewController alloc] init];
[self.navigationController pushViewController:childView animated:YES];
}
}
そのため、if ステートメントの最初の部分で子ノードがあるかどうかを確認し、ある場合は別の uinavTableViewController を作成します。この部分は完璧に機能します。
else ステートメントは、uinavMenuItem を使用してリーフ ページを作成します。これをシミュレーターで実行すると、リーフ ページはただの黒い画面になります。NSLog を調べたところ、uinavMenuItem viewDidLoad が起動されたことを確認できました。したがって、コントローラー コードは正常に動作していますが、ストーリーボードに描画したビューにリンクする方法がわかりません。
StoryboarD に描いたものが uinavMenuItem に表示されない原因は何ですか?