推扬网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
推扬网 门户 经验分享 查看内容

Android 自定义标题栏背景

2020-4-11 13:38| 发布者: admin| 查看: 440| 评论: 0

最近在做android项目,需要做一个自定义的标题栏(操作栏)。去网上找了很多demo,发现都有很多问题。例如使用自定义的style。下面来分享下个人最终的解决方案吧

设置标题栏背景

1> 准备背景图片: background_pix.png

注:用背景图片比用颜色好处,可以让背景看起来有凹凸感.

2> drawable文件夹下放xml文件

bitmap_repeat.xml

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
  android:src="@drawable/title_pic"
  android:tileMode="repeat"> 
</bitmap>

3> 定义样式文件style.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

<!-- 自定义标题样式 -->

<style name="StatusBarBackground">

<item name="android:background">@drawable/bitmap_repeat

</item>

</style>

<style name="XTheme" parent="android:Theme">

<!-- Window attributes -->

<item name="android:windowTitleBackgroundStyle">@style/StatusBarBackground </item>

</style>

<!-- 自定义标题样式 -->

</resources>


4> 在manifest.xml中引用主题android:theme="@style/XTheme"

<activity android:name=".activity.MainActivty"

android:screenOrientation="portrait"

android:configChanges="keyboardHidden|orientation"

android:theme="@style/XTheme">

</activity>

自定义标题栏layout文件ct_title.xml
注: ct_title.xml文件中用如下方式设置标题栏背景会出下填充不满效果

android:background="@drawable/bitmap_repeat "
在activity中引用

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

setContentView(R.layout.main);

getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.ct_title);

}


鲜花

握手

雷人

路过

鸡蛋

最新评论

精选推荐

    广告服务|投稿要求|禁言标准|版权说明|免责声明|手机版|小黑屋|推扬网 ( 粤ICP备18134897号 )|网站地图 | 邮箱:vayae@hotmail.com

    GMT+8, 2025-6-10 00:28 , Processed in 0.063225 second(s), 28 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    返回顶部