我在我的应用程序中使用了一个自定义标题栏并且一切正常,但是当应用程序启动时,原始(标准)android标题栏会在被我的自定义标题栏替换之前显示一段时间
当应用程序已经加载到内存中时,这不是问题,因为“延迟”不明显,但如果应用程序尚未在内存中,则非常明显。
代码没有什么特别之处:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
我考虑过将样式更改为没有窗口标题,只是在布局顶部包含我的自定义标题,但这似乎不正确。
感谢您的任何指示。
答案 0 :(得分:1)
Thomas Devaux发布了一个智能解决方案。它在我的应用程序中运行
更改windowTitleBackgroundStyle以使用颜色“@android:color / transparent”。 同时为文本“android:windowTitleStyle”创建一个样式,并将其“android:textColor”>设置为透明。
答案 1 :(得分:1)
为了完整性地回答Lluis的回答,这里是在启动自定义标题之前隐藏默认标题所需的完整代码:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomWindowTitleStyle">
<item name="android:textColor">@android:color/transparent</item>
</style>
<style name="CustomTheme" parent="@android:style/Theme.Holo">
<item name="android:windowActionBar">false</item>
<item name="android:windowTitleBackgroundStyle">@android:color/transparent</item>
<item name="android:windowTitleSize">50dp</item>
<item name="android:windowTitleStyle">@style/CustomWindowTitleStyle</item>
</style>
</resources>
答案 2 :(得分:0)
在主要活动加载之前添加启动画面活动,应该有足够的时间让下一个活动正确加载
答案 3 :(得分:0)
您是否可以使用应用主题为您的应用全局设置自定义标题? See here这是一个很好的例子。我有一个类似的问题,我似乎记得去这条路线修好了。