`
厚积ss薄发
  • 浏览: 3819 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

android自定标题栏

阅读更多

自定义标题栏

自定义标题栏的xml文件title_bar.xml

 

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"        
    android:layout_width="fill_parent"     
    android:layout_height="fill_parent"
    >     
    
    <ImageView 
        android:layout_width="wrap_content"     
        android:layout_centerVertical="true"    
        android:layout_height="wrap_content"     
        android:src="@drawable/tit_back" 
        android:contentDescription="@string/back"
        android:onClick="show"
        />     
        
    <TextView 
        android:layout_width="wrap_content"     
        android:layout_centerInParent="true"     
        android:layout_height="wrap_content"   
        android:text="@string/app_name" 
        />     
    
</RelativeLayout>  
标题栏样式xml style.xml
<style name="CustomWindowTitleBackground">     
    	<item name="android:background">@drawable/bg_titlebar</item>    
	</style>     
    
	<style name="test" parent="android:Theme" mce_bogus="1">     
    	<item name="android:windowTitleSize">40dip</item>     
    	<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>   

	</style>

  主要代码:

package com.su.mytitile.activity;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.Toast;

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_bar);  //titlebar为自己标题栏的布局 注意顺序
	}
	
	public void show(View view){
		Toast.makeText(MainActivity.this, "标题栏", Toast.LENGTH_LONG).show();
	}

	@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;
	}

}

 drawable目录下tit_back.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >	
	<!-- Non focused states -->
	<item android:state_focused="false" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tit_back_0" />
	<item android:state_focused="false" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tit_back_1" />
	<!-- Focused states -->
	<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tit_back_1" />
	<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tit_back_1" />
	<!-- Pressed -->
	<item android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tit_back_1" />
	<item android:state_pressed="true" android:drawable="@drawable/tit_back_1" />	
</selector>

 修改AndroidManifest.xml文件

 <application
        android:allowBackup="true"
      >
        <activity
            android:name="com.su.mytitile.activity.MainActivity"
            android:theme="@style/test" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

 

 

 

分享到:
评论

相关推荐

    Android 获取屏幕、状态栏、标题栏的尺寸

    在Android开发中,准确地获取屏幕、状态栏和标题栏的尺寸是至关重要的,这有助于开发者创建适应不同设备和屏幕尺寸的应用。以下是一些关于如何获取这些尺寸的关键知识点。 1. **屏幕尺寸获取** - **DisplayMetrics...

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

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助开发者实现更个性化和功能丰富的界面设计。本文将深入探讨如何在Android中创建并封装一个自定义标题栏,参考了链接中的博客文章《Android自定义标题栏...

    Android隐藏状态栏和标题栏,相当于全屏效果

    Android 隐藏状态栏和标题栏,实现全屏效果 Android 操作系统中,状态栏和标题栏是默认情况下显示的,但是有时候,我们需要隐藏它们以实现全屏效果。隐藏状态栏和标题栏可以通过两种方式来实现:使用预定义样式和...

    Android 组件 Axure 状态栏 标题栏

    在移动应用设计中,Android平台的用户界面设计是至关重要的,尤其涉及到状态栏和标题栏这两部分。状态栏通常位于屏幕顶部,显示网络连接、时间、电量等系统信息,而标题栏则通常包含应用的Logo、标题文本以及导航...

    listView上滑隐藏标题栏,防淘宝隐藏标题栏

    在Android应用开发中,"ListView上滑隐藏标题栏,防淘宝隐藏标题栏"是一个常见的交互设计,它模拟了淘宝等电商应用的用户体验,使得用户在浏览商品列表时,标题栏可以随着手指上滑的动作自动隐藏,提高浏览的沉浸感...

    Android实现自定义标题栏的方法

    在Android应用开发中,自定义标题栏是一种常见的需求,它可以让应用界面更加个性化,符合设计风格。本篇文章将详细介绍如何在Android中实现自定义标题栏。 首先,自定义标题栏通常涉及创建一个新的XML布局文件来...

    Android实现隐藏状态栏和标题栏

    在Android开发中,有时为了获得更沉浸式的用户体验或者简洁的界面设计,开发者会选择隐藏应用的状态栏和标题栏。本篇文章将详细讲解如何在Android中实现这一功能。 首先,隐藏标题栏(ActionBar)是通过设置应用...

    android中实现滑动标题栏颜色渐变(scrollview)

    在Android开发中,滑动标题栏颜色渐变是一种常见的交互设计,可以提升用户的操作体验。在本示例中,我们将探讨如何使用ScrollView实现这一效果。ScrollView是一个可滚动的视图容器,可以包含一个或多个视图,允许...

    Android 开发隐藏标题栏的方法总结

    在Android开发中,标题栏(ActionBar或Toolbar)是应用程序界面的一部分,通常用于显示应用的名称、图标以及提供一些操作选项。然而,在某些情况下,我们可能希望隐藏标题栏以获得更简洁的用户界面或者实现特定的...

    Android ListView浮动头部标题栏

    总的来说,Android ListView的浮动头部标题栏是一个增强用户体验的重要特性,通过合理的布局设计和滚动事件处理,我们可以实现这一功能,使得关键信息在用户滚动列表时始终保持可见,提高应用的可操作性和易用性。

    ListView标题栏划动隐藏,拉动listView头部背景图实现刷新

    总之,"ListView标题栏划动隐藏,拉动listView头部背景图实现刷新"是Android开发中的两个常见高级交互设计。通过结合ScrollView、ListView、SwipeRefreshLayout等组件,以及手势检测和自定义布局,开发者可以为用户...

    Android中去掉标题栏的几种方法(三种)

    如果你的Activity继承自`AppCompatActivity`,你可以直接在代码中调用`SupportActionBar`的`hide()`方法来隐藏标题栏。但是,这种方法并不适用于所有情况,特别是在SplashActivity(启动页面)中可能无效。这是因为...

    Android Studio实现标题栏和状态栏的隐藏

    例如,我们可以定义一个名为`NoTitle`的主题,继承自`Theme.AppCompat.DayNight.NoActionBar`,这样将自动去除ActionBar(即标题栏): ```xml &lt;item name="android:windowNoTitle"&gt;true &lt;item name="android:...

    android7 隐藏状态栏功能代码

    5. **适配不同版本**:虽然标题提到的是Android 7.1,但要注意不同Android版本可能有不同的行为和API。对于更早的版本,可能需要使用其他方法或第三方库来实现类似功能,如`NineOldAndroids`。 6. **框架和包结构**...

    Android实现无标题栏全屏的方法

    在Android开发中,为了提供更好的用户体验,有时我们需要让应用界面无标题栏且全屏显示。本文将详细介绍三种在Android中实现这一目标的方法。 方法一:XML配置 在AndroidManifest.xml文件中,找到需要设置为全屏无...

    Android ListView向上滑动隐藏标题,下拉显示标题栏,完美解决滑动出现的空白问题

    在设计用户界面时,有时为了提高用户体验,我们希望在用户上滑ListView时隐藏标题栏,以便为内容区域提供更大的可视空间;而在用户下拉时,标题栏又能重新出现,方便用户导航。这个功能在很多应用中都可以看到,比如...

    自定义ScrollView 实现图片放大,上滑修改标题栏状态

    最后,为了使标题栏随着滚动动态改变,我们可以使用`androidx.coordinatorlayout.widget.AppBarLayout`与`androidx.appcompat.widget.Toolbar`结合。当ScrollView向上滚动时,AppBarLayout会自动收缩,标题栏随之...

    折叠式标题栏

    折叠式标题栏是一种常见的UI...总的来说,折叠式标题栏是提高Android应用界面交互性和美观性的重要手段。通过熟练掌握TabLayout和ViewPager的使用,以及折叠动画的实现技巧,开发者可以创造出更加用户友好的应用界面。

    android动态显示导航栏.移动开发

    在Android移动开发中,动态显示导航栏是一种常见的需求,它能提供灵活的界面设计和交互体验。传统的做法是通过XML布局文件预定义导航栏的各个元素,但这种方法不够灵活,不能适应不同场景下导航栏数量的变化。本示例...

    android之文字滚动栏

    在Android开发中,"文字滚动栏"是一种常见的UI元素,尤其在新闻应用、公告界面或者信息展示中,用于展示过多文字内容。这个标题所指的可能是实现一个自定义的TextView或者一个滚动视图,能够自动滚动显示超出视图...

Global site tag (gtag.js) - Google Analytics