`
aliusa
  • 浏览: 84276 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

添加自定义风格的titleBar栏

阅读更多
1.自定义一个title layout
  title.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#454545"
    android:paddingLeft="0px">
    <TextView
        android:id="@+id/title"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="0px"
        android:text="@string/applicationTile" />

</LinearLayout>


2. 在activity的oncreate函数中添加如下代码,注意顺序不能颠倒
   
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
   setContentView(R.layout.tietohome);
   getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);
 

  这样虽然可以在一定程度上定制标题栏, 不过, 这里无法改变标题栏的高度和背景(背景设置之后会在两端有两个非常难看的边框). 据说, 原因是android 固有的.

这里有修改方法:
  原理是这样的. 直接像上述代码那样添加title仅仅是把一个子界面添加到原有的title上的, 并没有改变原来的属性, 比如 标题栏大小, 标题栏背景. 这些需要在theme 主题里面定义.
  因此先定义一个style,
  若修改背景请修改android:windowTitleBackgroundStyle
  若修改标题栏高度,请修改android:windowTitleSize

例子:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">


<style name="CustomWindowTitleBackground">
<item name="android:background">#565656</item>
</style>


<style name="test" parent="android:Theme">
<item name="android:windowTitleSize">50dp</item>
<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>
</resources>


在程序的android manifest.xml中对应activity中添加属性 
android:theme = "@style/test"  
就可以了

     
分享到:
评论

相关推荐

    自定义的TitleBar

    标题中的“自定义的TitleBar”指的是在Android或者iOS应用开发中,开发者为了满足特定设计需求,不使用系统默认的标题栏(ToolBar或NavigationBar),而是自己编写代码创建的个性化标题栏。这种自定义通常是为了实现...

    自定义组件titlebar

    这样,只需要在每个Activity中实例化这个类并设置相关属性,就能快速拥有一个符合设计风格的TitleBar。 总的来说,自定义TitleBar是Android开发中常见且实用的技术,它能帮助开发者打造更具有个性化的用户界面,...

    安卓自定义titlebar和卫星菜单(修改)

    4. **样式表**:在res/values目录下,可以创建style.xml文件,定义自定义标题栏的主题和样式,包括字体大小、颜色、背景等,以保持应用的整体风格统一。 接下来,我们讨论卫星菜单。卫星菜单通常用于在有限的屏幕...

    qt5 自定义标题栏

    在Qt5中,自定义标题栏是一项常见的需求,特别是在开发具有独特用户界面风格的应用程序时。这个主题将深入探讨如何使用Qt5实现自定义标题栏,包括移除系统默认的标题栏,添加基本操作(如关闭、最大化和最小化)以及...

    Android-Android自定义TitleBar

    自定义TitleBar可以让开发者根据应用的需求和设计风格来创建独特且功能丰富的头部视图,提高用户体验。本文将深入探讨如何在Android中实现自定义TitleBar,并结合提供的文件"lushan123456-TitleBarView-3f3a8ec"进行...

    自定义Titlebar

    自定义Titlebar可以为应用程序提供独特的外观和交互体验,使得UI设计更加符合品牌形象或者用户需求。本教程将深入探讨如何在Android中实现自定义Titlebar。 首先,我们需要了解Android的布局系统。Titlebar通常由一...

    Android项目中自定义顶部标题栏

    在Android应用开发中,自定义顶部标题栏是一个常见的需求,它可以提供独特的用户界面风格和功能。下面我们将深入探讨如何在Android项目中实现自定义标题栏,包括定义标题栏布局、自定义TitleActivity以及实现在标题...

    Android自定义titlebar中设置progressbar

    在Android应用开发中,标题栏(titlebar)是应用程序界面中的一个重要...总之,自定义Titlebar并在其中添加ProgressBar是提升用户体验的一种有效方式,通过灵活的布局和编程,可以创建出符合应用需求的个性化标题栏。

    BaseActivity自定义TitleBar

    这个自定义TitleBar不仅提供了独特的界面风格,还可以在所有继承`BaseActivity`的子类中复用,从而简化了代码维护工作。记得在每个具体活动中设置TitleBar的内容和行为,以满足不同场景的需求。

    Android 自定义控件 组合控件 TitleBar

    本文将深入探讨如何创建一个自定义的组合控件,特别是针对App标题栏(TitleBar)的设计与实现。我们将从基本的自定义控件概念讲起,并逐步构建一个完整的TitleBar组件。 首先,了解自定义控件的基本原理。在Android...

    Android自定义标题栏(并加入返回按钮)demo

    在Android应用开发中,自定义标题栏是一种常见的需求,它能提供更加个性化和与应用风格一致的用户体验。本文将深入探讨如何在Android中创建一个自定义的标题栏,并且添加一个返回按钮。我们将通过以下几个步骤来实现...

    titlebar实现

    在桌面应用中,比如Java Swing或JavaFX,你需要覆写`JFrame`的默认布局管理器,添加自定义组件。 3. **事件处理** 自定义Titlebar意味着需要自己处理按钮点击、拖动等事件。在Android中,这可能涉及到`...

    WFP_自定义标题栏.zip

    5. **可扩展性**: 为了使自定义标题栏更具可维护性和可扩展性,可以考虑将TitleBar封装成一个独立的UserControl。这样,如果需要在其他项目中使用,只需引用这个UserControl即可。 最后,`WPF.Tool`可能是一个工具...

    Android标题栏TitleBar介绍

    1. **创建TitleBar实例**:通过`public class TitleBar extends LinearLayout`创建自定义的`TitleBar`类。 2. **加载布局**:使用`LayoutInflater`加载预先定义好的XML布局文件,该文件包含了所有必要的视图组件。 3...

    Node.js-Android仿iOSUINavigationBar风格的Titlebar适用于某些UI设计师只出iOS效果图的项目

    在提供的压缩包文件`BGATitleBar-Android-master`中,很可能是已经实现了一个仿iOS风格Titlebar的开源项目。你可以通过阅读源码,学习其布局设计和交互逻辑,进一步理解如何在Android中实现这一功能。这个项目可能...

    公共的titleBar

    Toolbar提供了更大的定制空间,比如添加自定义视图、菜单项等。 3. **自定义TitleBar**:正如描述中所述,开发者可以创建自己的XML布局,包含TextView(展示标题)、ImageView(展示图标)和其他按钮等,然后在需要...

    Android-TitleBar满足各种日常使用的标题栏不要让你的时间浪费在写标题栏上

    5. **可扩展性**:开发者可以轻松添加自定义视图和行为,实现更复杂的标题栏功能。 6. **兼容性**:确保在多种Android版本和设备上都能正常运行,提高应用的兼容性。 7. **资源复用**:通过统一的TitleBar组件,...

    AndroidTitleBar

    总的来说,"AndroidTitleBar"实例提供了一个可复用的TitleBar组件,可以帮助开发者快速构建具有返回按钮的自定义标题栏,减少开发工作量,同时保证了用户体验的一致性和质量。通过理解和使用这个实例,开发者可以...

    自定义titleLayout

    5. **主题适配**:为了保证自定义标题栏与应用的整体风格一致,你可能还需要根据不同的主题或夜间模式调整其颜色和样式。这可以通过设置主题属性或者在代码中动态调整来实现。 通过以上步骤,我们便能创建一个可...

Global site tag (gtag.js) - Google Analytics