【问题标题】:iOS. addsubview to master-detail appIOS。将子视图添加到主从应用程序
【发布时间】:2013-04-15 14:05:06
【问题描述】:

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

我试图滚动我的 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

【问题讨论】:

  • 我的做法不同。我需要用 cmets 显示详细的新闻。我使用带有 2 个部分的 UITableView。在 1 我使用 UIWebView,在 2 tableview

标签: iphone ios master-detail


【解决方案1】:

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

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

然后取消选中属性检查器第一个选项卡中的Use Autolayout 框。

希望对你有帮助。

【讨论】:

  • 谢谢,但没有帮助。 :(
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-03-19
  • 1970-01-01
  • 2013-07-07
  • 1970-01-01
  • 2016-09-26
  • 1970-01-01
  • 2015-03-09
相关资源
最近更新 更多