安卓标题栏优化(1)——纪念火影-->隐身术

在老师的号召下,我们做着痛苦的代码抽取,封装,只要一样的,都要抽取,封装。

忍者世界,有着一个传奇忍术,就算是自来也不知道的忍术,他明明站在你面前,你却看不到他,就在你掉以轻心的时候,他在你背后给你致命一击。 他就是隐身术。

思路: 对于一个标题栏,一个APP要多次用到 ,我们要单独抽取出来,作为一个XML 如果一个界面需要到了 就用include  包括进来

   <include
        android:id="@+id/title_bar"
        layout="@layout/layout_title_bar" />
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/title_bar"
    android:layout_width="match_parent"
    android:layout_height="55dp"
    android:background="@drawable/title_red_bg2"
    android:gravity="center_vertical"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/btn_left"
        style="@style/style_title_btn"
        android:layout_width="wrap_content"
         android:background="@android:color/transparent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:padding="5dp"
        android:text="" />

    <ImageButton
        android:id="@+id/imgbtn_left"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:background="@android:color/transparent"
        android:scaleType="centerInside" />

    <RelativeLayout
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1" >

        <TextView
            android:id="@+id/txt_title"
            style="@style/style_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:drawablePadding="5dp"
            android:gravity="center"
            android:singleLine="true"
            android:text="新闻" />
    </RelativeLayout>

    <ImageButton
        android:id="@+id/imgbtn_text"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:visibility="gone"
        android:src="@drawable/icon_textsize"
        android:background="@android:color/transparent"
        android:scaleType="centerInside" />

    <ImageButton
        android:id="@+id/imgbtn_right"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:background="@android:color/transparent"
        android:scaleType="centerInside" />

    <ImageButton
        android:id="@+id/btn_right"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:background="@android:color/transparent"
        android:scaleType="centerInside"  />

</LinearLayout>

关于布局嘛  Button ImageView 都设置成 #00000000 透明色

<span style="font-size:18px;">  android:background="@android:color/transparent"
其实 这个标题栏做的不错啦 ,如果你开发的时候没有适合的,可以手残下来。
</span>

然后再 Oncreate 方法里面  初始化

	protected void initTitleBar(View view) {
		leftBtn = (Button) view.findViewById(R.id.btn_left);
		rightBtn = (ImageButton) view.findViewById(R.id.btn_right);
		leftImgBtn = (ImageButton) view.findViewById(R.id.imgbtn_left);
		rightImgBtn = (ImageButton) view.findViewById(R.id.imgbtn_right);
		leftImgBtn.setImageResource(R.drawable.img_menu);
		titleTv = (TextView) view.findViewById(R.id.txt_title);
		leftBtn.setVisibility(View.GONE);
		rightBtn.setVisibility(View.GONE);
		if(leftImgBtn!=null)
		leftImgBtn.setOnClickListener(this);

	}
时间: 2024-10-19 07:15:57

安卓标题栏优化(1)——纪念火影-->隐身术的相关文章

安卓性能优化 视频

韩梦飞沙  韩亚飞  [email protected]  yue31313  han_meng_fei_sha 安卓-性能优化之内存泄漏-原创-高清视频-爱奇艺 ========= Android手机内存管理与性能优化视频教程下载 下载:http://pan.baidu.com/s/1skkSdI1密码:kdcs 01.Dalvik介绍及其优势和文件格式 02.基于栈与基于寄存器比较 03.DEX与ODEX文件格式和ODEX化详解 04.GC垃圾回收机制 05.内存监测分析工具DDMS介绍 0

安卓性能优化手册

本手册适合至少有初级经验的开发者查阅或复习相关知识使用,新手可能会看不懂. 1.java代码优化 1.1安卓如何执行代码 dvm:.java->.class->.dex->.apk 优化斐波那契数列: 斐波那契数列的递推公式是f(n)=f(n-1)+f(n-2),特征方程为:x2=x+1,解该方程得(1+sqrt(5))/2,(1-sqrt(5))/2.所以f(n)=Ax1n+Bx2n,带入f(0)=0,f(1)=1得A=sqrt(5)/5,B=-sqrt(5)/5.则f(n)求出. B

安卓标题栏随屏幕滑动改变颜色

为了我们项目的美观我们也许经常会碰到一些感觉很头疼的问题,如标题所说就是一个,一个scrollView包裹的页面或者存在listView的页面往往需要在往上滑动的时候标题栏实现悬浮并且背景颜色也要随之改变.废话不多说了,直接说怎么实现吧. 1.如果是scrollView包裹的页面,我们需要把scrollView和标题栏定义在相对布局中,保证标题栏可以悬浮,listView也是同理. 2.如果是scrollView我们需要用到onOverScrolled方法,然而这是一个protected方法,所

安卓性能优化

谷歌性能点滴 http://developer.android.com/intl/zh-cn/training/articles/perf-tips.html 本文主要涉及一些小优化,组合使用可以提升App整体性能,但不会显著的提升性能.提升性能首选合适的算法和数据结构,这超出了本文的范畴.这里的技巧应该作为你平时写代码的习惯,以便写出高效的代码. 高效的代码有两个基本的规则: 不做不必要的事 尽量不分配内存 优化Android程序的时候需要面对不同的硬件.不同版本的VM,不同的处理器,不同的速

安卓手机优化 ROOT自启动管理 + 电量管理

一.KingRoot + 净化大师 KingRoot 主要完成ROOT 和 自启动软件的管理 这里禁止的自启动管理 对于有些软件是不太管用 比如美团 手机百度等 净化大师 主要完成 高电量的软件优化 还有禁止顽固的自启动程序  比如美团等 经过这两个软件的优化 重启手机速度变的很快了,然后在[设置]-[应用程序]-[正在运行]里查看现在的软件自启动情况

Unity3D安卓开发优化_强制控制分辨率

目前学习应用性能优化最直接的方法就是降低分辨率. 一般3D场景在电脑运行没问题,一进手机就卡成放PPT了. 针对特定设备可以限制分辨率. 性能优化有很多方面,这次主要是分辨率,很简单,一句代码 Screen.SetResolution(high,width,true); 这里有一个要主注意就是固定了分辨率后在不同设备上运行会出现问题. 这个得研究研究,看看得到屏幕原始分辨率,再通过一定比例缩小,估计可以.

教你怎么使用apilication—纪念火影--&gt;影子模仿术

影子模仿术--鹿丸的绝招 奈良一族密传的忍术,藉由伸长自己的影子来与敌方的连结,使对方作出和自己相同动作的奇特忍术. 其实对于安卓来说,入口并不是activity的Oncreate,而是aplication 大家可以看看配置文件,最先的并不是activity. 其实我第一次看怎么使用aplication的时候,总觉得有点像单例模式,或者是说,aplication就是拿着单例的原理 造就了他的特性么? 他就像影子模仿术一样,它里面存放着全局变量,不管是谁,只要是他的子类,只要在一个进程,都可以共用

安卓应用优化篇

类和对象使用技巧 尽量少用new生成新对象 使用clone方法生成新对象 尽量使用局部变量栈变量 减少方法调用 使用final类和final/static/private方法 让访问实例内变量的 getter/setter 方法变成final 避免不需要的 instanceof 操作 避免不需要的造型操作 尽量重用对象 不要重复初始化变量 不要过分创建对象 Java IO技巧 使用缓冲提高IO性能 lnputStream比Reader高效,OutputStream比Writer高效 在适当的时候

安卓电量优化之JobScheduler使用介绍

一.JobScheduler概述 JobScheduler是安卓5.0版本推出的API,允许开发者在符合某些条件时创建执行在后台的任务.在Android开发中,会存在这些场景:你需要在稍后的某个时间点或者当满足某个特定的条件时执行一个任务,例如当设备接通电源适配器或者连接到WIFI,此时就可以使用JobScheduler了,当一系列预置的条件被满足时,JobScheduler API为你的应用执行一个操作.与AlarmManager不同的是这个执行时间是不确定的.除此之外,JobSchedule