2016-01-08 14 views
1

我在iOS应用程序中以全屏模式添加了Google Places Autocomplete UI control。有没有什么办法可以在这个控件中改变导航栏的背景色/色调颜色?如何在Google Places上应用样式iOS上的自动完成UI(全屏)控件

我也尝试在我的应用程序中添加一个新的视图控制器,试图更好地控制样式。在这个新的视图控制器中,我有我想要的样式的导航栏,然后添加一个位于视图顶部(位于导航栏下方)的UISearchController。我挂了结果控制器这个搜索控制器如这里的API文档中描述:

https://developers.google.com/places/ios-api/autocomplete#add_a_results_controller

然而,当我开始在搜索栏中输入的东西,结果视图隐藏导航栏。

我还添加了下面的代码(如再次在API文档所描述的),但它并没有帮助:

 

    self.navigationController.navigationBar.translucent = NO; 
    _searchController.hidesNavigationBarDuringPresentation = NO; 

    // This makes the view area include the nav bar even though it is opaque. 
    // Adjust the view placement down. 
    self.extendedLayoutIncludesOpaqueBars = YES; 
    self.edgesForExtendedLayout = UIRectEdgeTop; 

任何帮助将不胜感激!

更新:我认为自动完成控件只能在基于导航控制器的应用程序中使用时正常工作。我没有一个。现在我已经添加了导航控制器,导航栏和状态栏的全局样式已经在应用程序委托中定义,这似乎会影响自动完成模式。另外一个问题,一旦我在搜索框中输入任何东西,导航栏就会被完全隐藏起来,似乎已经被固定,并且包含了导航控制器。

回答

0

随着自动完成控制的最新版本(1.11.1,在项目运行的pod update以确保您有最新的版本),你可以使用外观代理着色在GMSAutocompleteViewController导航栏,例如:

[[UINavigationBar appearance] setBarTintColor:[UIColor greenColor]]; 

无论您是否在应用程序中的其他位置使用导航控制器,此功能都可以正常工作。

相关问题