iOS版。将multicubview添加到master-detail app

时间:2013-04-15 14:05:07

标签: iphone ios master-detail

我有一个带有新闻的主 - 细节应用程序。有用。在详细控制器中,我使用了UIWebView。 我使用 xib 创建了评论类,并尝试将其添加到我的详细信息视图中。 评论为UITableViewController。 之后,我只能看到评论,而不是详细文本。

我尝试滚动 webview ,但没有文字。但是在 detailviewController 中,我为我的文本做了NSLog并看到了它。如果我将newsTextHeight设置为 480 ,我会看到一个空视图。

我做错了什么?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    CGFloat newsTextHeight = 250;
    DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
    CommentsViewController *commentController  = [[CommentsViewController alloc] init];

    NewsItem *newsItem = [news objectAtIndex:indexPath.row];

    detailViewController.description = newsItem.description;
    detailViewController.title = newsItem.date;
    commentController.news_id = newsItem.news_id;
    detailViewController.news_id = [newsItem.news_id intValue];
    int views = [newsItem.viewsCnt intValue];
    views++;
    NSString *strFromInt = [NSString stringWithFormat:@"%d",views];
    newsItem.viewsCnt = strFromInt;
    [self.tableView reloadData];
    //[self.navigationController presentedViewController];

    [self.navigationController pushViewController:detailViewController animated:YES];
    detailViewController.navigationController.toolbarHidden = NO;
    [detailViewController addChildViewController:commentController];
    [commentController didMoveToParentViewController:detailViewController];

    [detailViewController.view addSubview:commentController.view];

    detailViewController.view.frame = CGRectMake(0, 0, detailViewController.view.bounds.size.width, newsTextHeight);

    commentController.tableView.contentInset = UIEdgeInsetsMake(detailViewController.view.frame.size.height, 0, 0, 0);

    [commentController release];
    [detailViewController release];

}

结果:http://s18.postimg.org/5cv8ftbbd/detail.png

1 个答案:

答案 0 :(得分:0)

Kiattisak所遇到的问题可能是您的观点detailViewController.view.frame正在使用自动布局。因此无法以编程方式调整大小。 (这是如果你没有使用故事板)

在InterfaceBuilder中,突出显示您的视图:

enter image description here

取消选中属性检查器第一个标签中的Use Autolayout框。 enter image description here

希望它有所帮助。