Android开发truck快速开发框架TitleBar(六)

简介

truck项目的github地址: https://github.com/hookYuan/Truck
TitleBar为自定义封装的title,用于替换系统的Toolbar和ActionBar。Titilebar是默认集成于MVPActivity中,所以,所有集成MVPActivity的界面在布局文件都可以不用再重复写TitleBar。自定义TitleBar可以实现动态更换左、中、右字体大小,可以动态修改字体颜色、可以动态添加布局文件等。自定义额titleBar的目的就是把toolbar实现不方便的地方变得简单。由于Toolbar主要是集成在Activity中,下面主要讲一讲Acitivty中TitleBar的使用。

示例

设置TitleBar的显示方式。TitleBar的显示显示方式有三种:一、没有Titlebar;二、Titlebar显示在内容上面;三、TitleBar覆盖在内容上面。在MVPActivity中通过以下重写方法配置:

 @Override
    public ETitleType showToolBarType() {
        return ETitleType.OVERLAP_TITLE;
    }
配置个性化TitleBar,在配置个性化TitleBar之前,首先需要设置Application的主题取消状态栏(5.0以上有效,5.0以下不配置状态栏),因为Titlebar已经默认接管状态栏的显示。配置如下:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/album_colorPrimary</item>
        <item name="colorPrimaryDark">@color/album_colorPrimaryDark</item>
        <item name="colorAccent">@color/album_colorAccent</item>
        <!--更改menu菜单的颜色-->
        <item name="actionMenuTextColor">@color/white</item>
        <!--修改默认背景-->
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@color/background</item>
    </style>
在Activity中可以通过getTitleBar()方法分别设置左侧、中间、右侧的文字、图标、点击事件、文字样式等。具体设置参数可参看truck项目。简单示例如下:
 getTitleBar()
                .setLeftIcon(R.drawable.ic_base_back_white)
                .setDefaultTheme(ETitleTheme.DARK_TRANSPARENT)
                .setTitleAndStatusBgColor(ContextCompat.getColor(this, com.yuan.basemodule.R.color.transparent)).
                setFontColor(ContextCompat.getColor(this, R.color.white))
                .setToolbar("青花瓷");
Titlebar还支持menu菜单,采用默认菜单样式,直接简单配置,具体效果如下:
 ArrayList<String> data = new ArrayList<>();
        data.add("缩放动画");
        data.add("平移动画");
        data.add("说明");

        getTitleBar().setToolbar("RxDialog")
                .setLeftIcon(R.drawable.ic_base_back_white)
                .setRightMenu(R.drawable.ic_base_menu_more_white, data, new OnMenuItemClickListener() {
                    @Override
                    public void onItemClick(PopupWindow popupWindow, AdapterView<?> adapterView, View view, int i) {
                        
                    }
                });
Titlebar除了可以设置基本样式外,还能添加基本动画。默认添加平移弹出、平移隐藏动画。如需其他动画,可以自定义动画实现。示例代码如下:
getTitleBar().setAnimationTitleBarIn();//进入动画
getTitleBar().setAnimationTitleBarOut();//出厂动画

快速开发

android 5.0以后,我认为在美观上最大的改变就是沉浸式状态栏。然而想要状态栏和toolbar使用起来都不是那么的简单。而 titlebar设计之初就是为了简单的使用,主要用于调节状态栏和toolbar的样式。便捷修改状态栏文字颜色等等。Titlebar的快速使用还体现在参数设置采用Build模式。对于Build模式大家肯定都不陌生,毕竟现在主流的OkHttp、Glide、Rxjava、Retrofit等都是采用这样的模式,这里,我为大家推荐一个插件InnerBuilder,它可以一键实现代码的build模式。具体安装方法如下:
  • Android studio中点击Setting。
  • 然后在setting中搜索plugins。
  • 在plugins搜索Innerbuilder,然后点击search in repositories。
  • 找到Innerbuilder下载安装,重启Android Studio即可。
插件安装完成后,在需要创建builder模式的类中,使用快捷方式Alt+shift+B即可快速生成build模式代码。
最后附上truck快速开发交流qq群:698442320
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值