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

Android 自定义标题栏

阅读更多

最近在做android应用的时候,感觉系统自带的标题栏不是很美观,所以就想这能自定义标题栏,在网上找的了很多方法,但是都不是很完美,今天就记录下如何自定义标题栏。

 

一:创建Android应用

    首先在eclipse里面创建一个android应用:DiyTitle

二:编写布局文件

   因为要采用自定义标题,所以这里需要创建一个布局文件来作为标题栏的布局,这里我就简单的使用一个文字信息作为标题,布局如下:

<?xml version="1.0" encoding="utf-8"?>     
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     
    android:orientation="horizontal"  
    android:layout_width="fill_parent"   
    android:layout_height="fill_parent">
    
  

    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="@string/app_name" 
        android:textSize="23sp"/>

  
          
</RelativeLayout>

 

  这里需要设置android:layout_centerInParent="true",才能让文字居中显示,接下来就要修改主题,在style.xml中添加自定义的样式:

     <style name="mywindowTitleBackground">
       
         <item name="android:background">@color/titleBgColor</item>	
    </style>

  在values目录下创建一个theme.xml文件,定义标题相关属性

<?xml version="1.0" encoding="utf-8"?>
<resources>
	<style name="themeTitle" parent="android:Theme.Light">
		<item name="android:windowTitleSize">46dip</item>
		<item name="android:windowTitleBackgroundStyle">@+style/mywindowTitleBackground</item>
		<item name="android:windowBackground">@color/windowbackgroud</item>
		<item name="android:textColor">@color/black</item>
	</style>
</resources>

  同时创建颜色配置文件drawable.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <color name="windowbackgroud">#44BBBF</color>
   <color name="black">#000000</color>
   <color name="white">#fff</color>
   <color name="gray">#808080</color>
   <color name="titleBgColor">#1AA6B5</color>
   <color name="titleTextColor">#fff</color>
   <color name="singNameColor">#10808E</color>
   <color name="btnClick">#EEE5DE</color>
   <color name="listViewDivider">#30A1A5</color>
</resources>

   该文件定义了一些颜色,可以自定义修改

 

然后将AndroidManifest.xml中指定的主题修改为我们上面定义的

 <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/themeTitle" >

     设置为themeTitle,这样就差不多了

 

三: 编写代码

  在MainActivity中设置标题栏的样式,注意顺序:

package com.jacksoft.diytitle;


import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.Window;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
		setContentView(R.layout.activity_main);
		getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}

 

 

四:运行

   这样就可以了,运行吧,结果如下:



 

  • 大小: 21.7 KB
分享到:
评论

相关推荐

    android自定义标题栏

    本教程将深入探讨如何在Android中实现自定义标题栏,主要基于提供的"android自定义标题栏源码"。 首先,我们了解Android原生标题栏的局限性。原生的ActionBar或Toolbar虽然提供了基础功能,但有时不能满足个性化的...

    Android自定义标题栏

    总结,Android自定义标题栏是一项关键的UI定制技术,它让开发者能够创建符合品牌风格的界面,提升用户交互体验。通过学习和实践,我们可以熟练掌握自定义标题栏的各种技巧,包括但不限于添加菜单项、设置点击事件、...

    解决android自定义标题栏充满的问题

    这篇博客“解决android自定义标题栏充满的问题”提供了一些解决方案。 首先,我们需要了解Android布局的基本原理。在Android中,我们通常使用LinearLayout、RelativeLayout、ConstraintLayout等布局管理器来组织UI...

    android自定义标题栏(已封装)

    本文将深入探讨如何在Android中创建并封装一个自定义标题栏,参考了链接中的博客文章《Android自定义标题栏(已封装)》。 首先,我们需要了解Android系统自带的Title Bar(在API 21及以上版本被称为ToolBar),它...

    C# xamarin android自定义标题栏

    在Xamarin.Android开发中,创建自定义标题栏是提升应用用户体验和界面个性化的重要步骤。Xamarin是一个强大的跨平台开发工具,允许开发者使用C#语言构建原生的iOS、Android和Windows应用程序。本教程将深入探讨如何...

    android 自定义标题栏 CAD如何快速自定义标题栏.docx

    android 自定义标题栏 CAD如何快速自定义标题栏.docx

    Android中自定义标题栏项目源码

    在Android应用开发中,自定义标题栏是一种常见的需求,它能提供更加个性化和与应用主题相符的用户体验。本文将深入探讨如何在Android中实现自定义标题栏,包括修改其高度和修复可能出现的显示问题。 首先,我们要...

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

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

    Android自定义顶部标题栏

    Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义顶部标题栏Android自定义...

    android studio自定义标题栏,可自定义回退按钮事件

    在Android开发中,自定义标题栏是提升应用用户体验和界面个性化的重要手段。Android Studio作为官方推荐的集成开发环境,提供了丰富的工具和API来帮助开发者实现这一目标。本篇将详细探讨如何在Android Studio中实现...

    Android复合控件学习之自定义标题栏

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助我们打造出具有独特风格的用户界面。本文将深入探讨如何在Android中实现自定义标题栏,并涉及自定义属性、接口回调等关键知识点。 首先,我们需要理解...

    Android 自定义标题栏 填满问题

    NULL 博文链接:https://lovezhou.iteye.com/blog/861589

    Android自定义状态栏颜色与应用标题栏颜色一致

    在Android开发中,为了让应用的用户体验更加统一和美观,有时我们需要自定义状态栏的颜色,使其与应用的标题栏颜色保持一致。在iOS系统中,这种效果很常见,但早期的Android版本并不支持这一特性。不过,从Android ...

    Android 简化 自定义标题栏

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助我们打造出具有独特风格的用户界面。"Android简化自定义标题栏"这个主题旨在帮助开发者快速、高效地实现这一功能,无需过于复杂的代码和设计。下面将...

    Andoid自定义标题栏示例

    在Android应用开发中,...总结起来,Android自定义标题栏涉及到`Toolbar`组件的使用,包括设置图标、文字、背景颜色、高度和菜单。通过灵活地调整这些属性,开发者可以根据需求创建出符合应用风格的个性化标题栏。

Global site tag (gtag.js) - Google Analytics