1

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

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

我究竟做错了什么?

- (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

4

1 回答 1

0

Kiattisak 的意思是,问题可能在于您的视图detailViewController.view.frame正在使用自动布局。因此将无法以编程方式调整大小。(这是如果您不使用情节提要)

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

在此处输入图像描述

并取消Use Autolayout选中属性检查器的第一个选项卡中的框。 在此处输入图像描述

希望能帮助到你。

于 2013-04-15T14:37:25.240 回答