UINavigationController导航栏重叠包含TableView

时间:2012-07-27 12:35:37

标签: ios uinavigationcontroller arcgis-server

我有一个第三方控件,希望我在其中放置一个视图。我试图获得一个包含一系列表视图的UINavigationController,但是当添加控件时,导航栏会将tableview重叠大约半行,看起来很愚蠢。

这是代码。我使用ArcGIS Server iOS SDK将导航控制器放在地图上的标注框中:

    IdentifyResultsViewController *idWindow = [[IdentifyResultsViewController alloc] init];
    idWindow.results = results;
    UINavigationController *nvc = [[UINavigationController alloc] initWithRootViewController:idWindow];
    map.callout.customView = nvc.view;
    nvc.view.frame = CGRectMake(0, 0, 275, 400);

     [map showCalloutAtPoint:self.mapPoint];

这是使用UINavigationViewController的常见问题,还是应该查看第三方控件?

2 个答案:

答案 0 :(得分:0)

我实际上遇到了类似的问题,第三方控件阻碍了我的导航栏。我试图调查控件,但我不够精通取消隐藏导航栏。

我所做的也可能是你可以做的事情:我没有使用内置的UINavigationBar,而是通过在页面顶部放入一个UIView并为其添加执行功能的自定义按钮来构建一个我想在酒吧里。如果找不到导致问题的原因,这会让你在第三方控件周围有更多的摆动空间。

希望它有所帮助!

答案 1 :(得分:0)

我使用一些简单的代码重新排序解决了这个问题 - 而不是使用initWithRootViewController,我创建了导航视图控制器,手动设置它的框架,然后将视图控制器推到它上面:

    IdentifyResultsViewController *idWindow = [[IdentifyResultsViewController alloc] init];
    idWindow.results = [self filterResults:results];
    UINavigationController *nvc = [[UINavigationController alloc] init];
    nvc.view.frame = CGRectMake(0, 0, 275, 400);
    [nvc pushViewController:idWindow animated:NO];

    map.callout.customView = nvc.view;
    [map showCalloutAtPoint:self.mapPoint];