我的应用程序使用作为布局创建自定义标题栏并使用此格式实现:自定义标题栏延迟
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.my_layout);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.my_custom_title);
super.onCreate(savedInstanceState);
现在它没有使用常规的主题android:Theme.Light
工作,也没有android:Theme.Light.NoTitleBar
,他们都导致当调用setContentView
时发生致命异常。因此,我创建它看起来像这样自定义样式:
<style name="MyWindowTitleBackground">
<item name="android:background">#000000</item>
</style>
<style name="CustomTheme" parent="android:Theme.Light">
<item name="android:windowTitleBackgroundStyle">@style/MyWindowTitleBackground</item>
<item name="android:windowActionBar">false</item>
<item name ="android:windowTitleSize">35dip</item>
</style>
然而,每一个应用程序被启动有在启动和使用自定义标题栏的实际布局的显示器之间有一个小的延迟时间,在此延迟默认的标题栏显示在其中的应用程序名称。大约一秒钟后,当Oncreate完成时,自定义标题被加载并显示。
有什么办法解决这个问题吗?我究竟做错了什么?
没有办法。它是一个恼人的错误。试试官方的Skype应用程序,你会发现它有同样的问题。 – Warpzit
如果没有办法,每个具有自定义标题的应用程序都应该有这个bug。例如,Dropbox应用程序不会显示此行为。 – XorJoep
在我的Dropbox应用程序中没有标题。你可以给标题栏加标题吗? – Warpzit