`
Darar
  • 浏览: 87821 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

自定义Android标题栏修改TitleBar的布局

阅读更多
Android程序默认的Activity标题栏只能显示一段文字,而且不能改变它的布局、颜色、标题栏的高度等。如果想要在标题栏加上个图标、button、输入框、进度条、修改标题栏颜色等,只能使用自定义的标题栏。自定义标题栏可以通过在onCreate函数中添加以下代码来实现,需要注意的是代码的顺序必须按照下面的样式,否则将无效。
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.mainactivity);    //Activity的布局 
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.titlebar);   //标题栏的布局 


虽然上面这样可以在标题栏加入一些控件,但是仍然不能改变标题栏的高度、背景色,要想达到这个目的,只能使用theme(主题)。因此往project里先添加一个style。改变背景色修改android:windowTitleBackgroundStyle的值,改变标题栏高度则修改android:windowTitleSize的值。下面是一个示例:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="CustomWindowTitleBackground"> 
        <item name="android:background">#778899</item> 
    </style> 
    <style name="activityTitlebar" parent="android:Theme"> 
        <item name="android:windowTitleSize">32dp</item> 
        <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item> 
    </style> 
</resources> 


接着再修改AndroidManifest.xml文件,找到要自定义标题栏的Activity,添加上android:theme值,比如:


<activity android:name=".MainActivity" android:theme="@style/activityTitlebar">

android:theme值就是上面那个style.xml文件里定义的一个style的name值。

按照以上的步骤,修改标题栏布局、高度、背景色的功能就实现了。



分享到:
评论

相关推荐

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

    下面我们将深入探讨如何在Android项目中实现自定义标题栏,包括定义标题栏布局、自定义TitleActivity以及实现在标题栏下内容的切换。 首先,**定义标题栏布局**是创建自定义标题栏的第一步。这通常涉及创建一个XML...

    Android标题栏TitleBar全攻略

    Android 标题栏 TitleBar 是一个自定义的 UI 组件,由 LinearLayout 继承而来,主要用于展示浏览器的标题栏信息,包括网站图标、标题、动画进度条和背景进度条等。下面我们将详细介绍 Android 标题栏的实现方法和...

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

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

    Android标题栏TitleBar介绍

    ### Android标题栏(TitleBar)介绍 在Android应用开发中,`TitleBar`是一个非常重要的UI组件,它位于应用程序界面的顶部,用于显示应用名称、当前活动页面的标题以及一些功能按钮等信息。通过合理的设计与实现,...

    TitleBar-master_Android通用标题栏_

    `TitleBar-master`项目是一个专门为Android应用设计的通用标题栏组件,旨在帮助开发者快速、便捷地实现美观且功能丰富的标题栏效果。 该项目的核心知识点包括: 1. **自定义View**: `TitleBar-master`通过自定义...

    CustomTitleBar, 【通用标题栏】通用Android标题栏控件 A Common Titlebar For Android.zip

    《通用Android标题栏控件——CustomTitleBar深度解析》 在Android应用开发中,界面设计是用户体验的关键一环,而标题栏(Title Bar)作为应用界面的重要组成部分,其设计和功能实现往往直接影响到用户对应用的第一...

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

    "Android-TitleBar"项目旨在提供一个全面、易用的标题栏解决方案,帮助开发者快速集成并定制符合应用需求的标题栏,避免花费大量时间在重复的标题栏编写工作上。 该TitleBar库提供了丰富的功能,包括但不限于以下几...

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

    通过分析这些文件,开发者可以学习并实践自定义Android标题栏和卫星菜单的具体实现方式。 总之,自定义标题栏和卫星菜单是Android开发中的常见实践,它们可以帮助开发者打造独特且符合用户习惯的应用界面。通过理解...

    Android自定义titlebar中设置progressbar

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

    Android 通用标题栏 简单封装实现

    1. 创建自定义布局:首先,你需要创建一个XML布局文件,定义通用标题栏的结构。这通常包括一个Toolbar元素,可以包含ImageView(用于显示图标)、TextView(用于显示标题)和其他视图(如按钮)。 ```xml &lt;androidx...

    Android 自定义控件 组合控件 TitleBar

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

    Android 上滑隐藏标题栏下滑显示标题栏(带动画效果、无卡顿、无空白)

    要实现标题栏的隐藏和显示,我们可以创建一个自定义的布局容器,例如`CustomTitleBarLayout`,继承自`FrameLayout`。在该布局中,我们需要添加一个标题栏视图,并监听滑动事件。可以通过重写`onTouchEvent()`方法,...

    自定义的TitleBar

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

    安卓自定义titlebar和卫星菜单

    3. 自定义样式:通过修改主题(Theme)或在布局中使用样式(Style),定制标题栏的颜色、字体等视觉效果。 4. 添加功能:根据需要,可以在标题栏上添加按钮、搜索框等控件,并处理相应的点击事件。 接下来,我们...

    Android-TitleBar自定义标题居中的ToolBar

    本教程将聚焦于如何创建一个自定义的标题居中并且可以添加自定义View到ToolBar的左右两侧的布局。 首先,我们需要在Android项目中引入ToolBar。在`res/layout`目录下创建一个新的XML布局文件,例如`activity_main....

    Android 仿今日头条首页标题栏效果

    在Android开发中,为了提供与今日头条类似的用户体验,开发者经常需要实现自定义的标题栏效果。这个项目名为"Android 仿今日头条首页标题栏效果",旨在复现今日头条App首页顶部的滑动指示器功能,通常包括多个可滑动...

    Android代码-android-titlebar

    开发过程中,如果页面过多,需要构建大量重复的标题栏布局,浪费开发时间且不利于后期维护。本项目总结了几种常用的使用场景,将标题栏封装成控件,Java代码实现,对当前主流的沉浸式提供了支持,供有需要的同学使用...

    Android中自定义标题栏样式的两种方法

    完成以上步骤后,你可以在自定义的标题栏布局文件(如`titlebar.xml`)中设计你想要的标题栏布局,并在运行时看到自定义的效果。 ### 结论 这两种方法都可以实现Android应用的自定义标题栏样式,但方法一更适合...

    Android 简易的动态标题栏

    Android允许开发者自定义全局或局部的主题,包括标题栏的样式。可以在`styles.xml`文件中定义一个自定义主题,然后在Activity中应用。这样可以统一应用的视觉风格,同时方便修改和维护。 9. **兼容性处理**: ...

Global site tag (gtag.js) - Google Analytics