在 Android 中创建自定义标题栏

Posted

技术标签:

【中文标题】在 Android 中创建自定义标题栏【英文标题】:Create custom titlebar in Android 【发布时间】:2011-08-10 19:50:45 【问题描述】:

我为我的应用程序创建了一个自定义标题栏,但我在实现它时遇到了一些问题。我想更改文本和标题栏的颜色和外观

styles.xml 的布局如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>

<style name="MyTheme">
    <item name="android:tabWidgetStyle">@style/LightTabWidget</item>


</style>
<style name="MyWindowTitleBackground" parent="@android:style/WindowTitleBackground">
    <item name="android:background">@android:drawable/title_bar</item>

</style>

<style name="MyWindowTitle" parent="@android:style/WindowTitle">
    <item name="android:singleLine">true</item>
    <item name="android:windowTitleSize">40dip</item>
    <item name="android:textAppearance">@style/MyTextAppearance</item>
    <item name="android:shadowColor">#BB000000</item>
    <item name="android:shadowRadius">2.75</item>
</style>
 <style name="MyTextAppearance" parent="@android:style/TextAppearance.WindowTitle">
    <item name="android:textColor">#3A6629</item>
    <item name="android:textSize">14sp</item>
    <item name="android:textStyle">bold</item>
</style>

<style name="LightTabWidget" parent="@android:style/Widget.TabWidget">

    <item name="android:textSize">20px</item>
    <item name="android:textStyle">bold</item>

    <item name="android:textColor">#FF5721</item>
</style>
</resources>

我在清单文件中添加了该主题,如下所示:

 <application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.Light">
   <activity android:name="LAFoodBankAboutUs" android:label="@string/app_name" android:theme="@style/MyTheme">

我必须做什么才能显示自定义标题栏?

【问题讨论】:

您可以看到here和here如何创建自定义窗口标题栏。 【参考方案1】:

现在(几年后),Toolbar 可用。它具有很多customization 的可能性,也可以通过Support Library 获得

【讨论】:

以上是关于在 Android 中创建自定义标题栏的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift Xcode 中创建自定义导航栏?

iOS 中的自定义搜索栏

调用 window.open 时如何在 WPF/WebView2 应用程序中创建自定义窗口?

iOS9:自定义 UIWindow 使状态栏消失

如何在android中创建自定义导航抽屉

在 Android 中创建自定义视图