我正在使用一个地点选择器来自 Google Play Services 的库启动了一个新的活动。新的活动/选择器有一个工具栏(操作栏),默认情况下没有样式。
PlacePicker 文档指出
如果您使用材质主题在应用程序中设置自定义颜色,
地点选择器继承 colorPrimary 和 colorPrimaryDark
主题的属性。
我的 style.xml 文件中有一个主题:
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="colorPrimary">#5665bb</item>
<item name="android:colorPrimary">#5665bb</item>
<item name="colorPrimaryDark">#41456b</item>
<item name="android:colorPrimaryDark">#41456b</item>
</style>
我已经设置了要在 Android Manifest 文件中使用的主题
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
地点选择器由以下代码创建:
try {
PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder();
Intent intent = intentBuilder.build(Main.this);
// Start the intent by requesting a result,
// identified by a request code.
startActivityForResult(intent, REQUEST_PLACE_PICKER);
} catch (GooglePlayServicesRepairableException | GooglePlayServicesNotAvailableException e) {
Log.e("", "Error with Google Play lib.");
}
但是,工具栏没有样式。和以前一样,它有白色背景和黑色文本。
有趣的是,我自己的工具栏(操作栏)确实具有样式。
如何强制地点选择器活动采用我的主题?
这是一承认的问题由开发团队。
当前设置自定义主题颜色存在一个已知问题
地点选择器。现在您可以通过定义两个来解决这个问题
名称为“primary”和“primary_dark”的颜色 - 这些将是
应用于 PlacePicker。
不幸的是,在主题上设置 Primary/primaryDark 属性将会
目前不影响 PlacePicker 样式。
编辑:
现在似乎已修复。
此问题应在 Google Play Services 10.0 中修复。放置选择器和
自动完成小部件将使用 colorPrimary 和 colorPrimaryDark
来自您的应用程序的颜色。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)