很多网友发现自己Android程序的标题栏TitleBar区域很单调,如果想个性化一些可以通过下面的方法来为自己软件的标题定制一个layout布局文件,比如浏览器的标题栏,它包含了网站的Favicon,自定义的进度条,和不确定的进度指示等等,实现的方法自己控制吧。下面代码在onCreate中使用,同时顺序不要改变,否则将无法生效:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
//titlebar为自己标题栏的布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar);
这样虽然可以在一定程度上定制标题栏, 不过, 这里无法改变标题栏的高度和背景(背景设置之后会在两端有两个非常难看的边框). 据说, 原因是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>
<item name="android:windowContentOverlay">@null</item>
</style>
</resources>
在程序的android manifest.xml中对应activity中添加属性 android:theme = "@style/test" 就可以了
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.guardian"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name" >
<activity android:name=".Guardian"
android:label="@string/app_name"
android:theme = "@style/test" //就在这里
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="4" />
</manifest>
之后借助于设置自定义的标题栏xml文件,就可以自定义标题栏布局了
转自:http://www.blogjava.net/Green-nut/articles/332617.html
- 大小: 6.2 KB
分享到:
相关推荐
在Android应用开发中,自定义标题栏是一种常见的需求,它能提供更加个性化和与应用风格一致的用户体验。本文将深入探讨如何在Android中创建一个自定义的标题栏,并且添加一个返回按钮。我们将通过以下几个步骤来实现...
Android 标题栏 TitleBar 是一个自定义的 UI 组件,由 LinearLayout 继承而来,主要用于展示浏览器的标题栏信息,包括网站图标、标题、动画进度条和背景进度条等。下面我们将详细介绍 Android 标题栏的实现方法和...
下面我们将深入探讨如何在Android项目中实现自定义标题栏,包括定义标题栏布局、自定义TitleActivity以及实现在标题栏下内容的切换。 首先,**定义标题栏布局**是创建自定义标题栏的第一步。这通常涉及创建一个XML...
### Android标题栏(TitleBar)介绍 在Android应用开发中,`TitleBar`是一个非常重要的UI组件,它位于应用程序界面的顶部,用于显示应用名称、当前活动页面的标题以及一些功能按钮等信息。通过合理的设计与实现,...
`TitleBar-master`项目是一个专门为Android应用设计的通用标题栏组件,旨在帮助开发者快速、便捷地实现美观且功能丰富的标题栏效果。 该项目的核心知识点包括: 1. **自定义View**: `TitleBar-master`通过自定义...
1. 创建自定义布局:首先,你需要创建一个XML布局文件,定义通用标题栏的结构。这通常包括一个Toolbar元素,可以包含ImageView(用于显示图标)、TextView(用于显示标题)和其他视图(如按钮)。 ```xml <androidx...
本文将深入探讨如何创建一个自定义的组合控件,特别是针对App标题栏(TitleBar)的设计与实现。我们将从基本的自定义控件概念讲起,并逐步构建一个完整的TitleBar组件。 首先,了解自定义控件的基本原理。在Android...
在Android应用开发中,标题栏(titlebar)是应用程序界面中的一个重要...总之,自定义Titlebar并在其中添加ProgressBar是提升用户体验的一种有效方式,通过灵活的布局和编程,可以创建出符合应用需求的个性化标题栏。
在提供的压缩包文件"安卓自定义titlebar和卫星菜单1"中,应该包含了实现这些功能的相关代码和资源文件,包括自定义TitleBar类的Java源码、自定义标题栏和卫星菜单的布局XML文件,以及可能的动画资源和样式表。...
标题中的“自定义的TitleBar”指的是在Android或者iOS应用开发中,开发者为了满足特定设计需求,不使用系统默认的标题栏(ToolBar或NavigationBar),而是自己编写代码创建的个性化标题栏。这种自定义通常是为了实现...
在Android应用开发中,自定义标题栏样式是一个常见的需求,以提供更个性化和与应用主题相符的用户体验。本文将详细讲解两种在Android中实现自定义标题栏样式的常见方法。 ### 方法一:通过代码动态设置 这种方法...
首先,我们来了解自定义标题栏。在Android 3.0(API级别11)之后,系统引入了ActionBar,取代了传统的标题栏。然而,许多开发者依然选择自定义标题栏,以满足特定的设计需求或保持应用的一致性。自定义标题栏通常...
"Android-TitleBar"项目旨在提供一个全面、易用的标题栏解决方案,帮助开发者快速集成并定制符合应用需求的标题栏,避免花费大量时间在重复的标题栏编写工作上。 该TitleBar库提供了丰富的功能,包括但不限于以下几...
CustomTitleBar是一款专门为Android平台设计的通用标题栏控件,它提供了一种灵活、可自定义的方式来实现各种风格的标题栏,旨在提升应用的UI一致性及交互体验。本文将深入探讨CustomTitleBar的核心特性和使用方法。 ...
getSupportActionBar().setTitle("自定义标题"); // 设置默认标题 ``` 为了实现标题居中,我们需要覆盖ToolBar的默认样式。在`styles.xml`中添加一个新的主题: ```xml <item name="android:titleTextAppearance...
要实现标题栏的隐藏和显示,我们可以创建一个自定义的布局容器,例如`CustomTitleBarLayout`,继承自`FrameLayout`。在该布局中,我们需要添加一个标题栏视图,并监听滑动事件。可以通过重写`onTouchEvent()`方法,...
最后,我们将自定义标题栏添加到了主布局的顶部。 这个自定义标题栏设计的一个优点是它的灵活性。你可以根据需要调整布局文件中的元素,比如改变按钮的大小、颜色或图标,甚至可以根据不同的场景动态隐藏或显示某些...
在描述和标签中提到了`Android ViewPaper`,这是一个用于创建自定义标题栏的开源库。ViewPaper提供了一种简洁的方式来实现可滑动的标题栏,它支持自定义布局和动画效果,使开发者能够轻松地在应用中集成类似今日头条...
Android允许开发者自定义全局或局部的主题,包括标题栏的样式。可以在`styles.xml`文件中定义一个自定义主题,然后在Activity中应用。这样可以统一应用的视觉风格,同时方便修改和维护。 9. **兼容性处理**: ...