您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
本篇文章给大家分享的是有关利用Android如何实现对 ToolBar进行整合,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
CustomeToolBar继承原生ToolBar
package com.ldm.imitatewx; import android.content.Context; import android.graphics.drawable.Drawable; import android.support.v4.content.ContextCompat; import android.util.AttributeSet; import android.view.View; import android.widget.TextView; import android.widget.Toolbar; /** * Created by John on 2017/2/16. */ public class CustomeToolBar extends Toolbar { private TextView mTvMainTitleLeft; private TextView mTvMainTitle; private TextView mTvMainRight; public CustomeToolBar(Context context) { super(context); } public CustomeToolBar(Context context, AttributeSet attrs) { super(context, attrs); } public CustomeToolBar(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override protected void onFinishInflate() { super.onFinishInflate(); mTvMainTitleLeft= (TextView) findViewById(R.id.lt_main_title_left); mTvMainTitle= (TextView) findViewById(R.id.lt_main_title); mTvMainRight= (TextView) findViewById(R.id.lt_main_title_right); } //设置主title内容 public void setMainTitle( String text ) { this.setTitle(" "); mTvMainTitle.setVisibility(View.VISIBLE); mTvMainTitle.setText(text); } //设置主title的内容文字的颜色 public void setTitleColor(int color ) { mTvMainTitle.setTextColor(color); } //设置左边title内容 public void setMainTitleLeft(String text ) { mTvMainTitleLeft.setVisibility(View.VISIBLE); mTvMainTitleLeft.setText(text); } //设置左边的title颜色 public void setMainTitleLeftColor(int color ) { mTvMainTitleLeft.setTextColor(color); } //设置左边icon public void setMainTitleLeftDrawable(int res ) { Drawable left= ContextCompat.getDrawable(getContext(),res); left.setBounds(0,0,left.getMinimumWidth(),left.getMinimumHeight()); mTvMainTitleLeft.setCompoundDrawables(left,null,null,null); } //设置右边的title public void setTvMainRightText(String text ) { mTvMainRight.setVisibility(View.VISIBLE); mTvMainRight.setText(text); } //设置右边标题的颜色 public void setMainTitleRightColor(int color ) { mTvMainRight.setTextColor(color); } //设置右边icon public void setMainTitleRightDrawable(int res ) { Drawable right= ContextCompat.getDrawable(getContext(),res); right.setBounds(0,0,right.getMinimumWidth(),right.getMinimumHeight()); mTvMainTitleLeft.setCompoundDrawables(right,null,null,null); } //设置toolbar颜色 public void setToolBarBackground(int res ) { this.setBackgroundResource(res); } //设置ToolBar左边的图标 public void setToolbarLeftBackImageRes(int res ) { this.setNavigationIcon(res); } //设置toolbar左边文字 public void setToolbarLeftText(String text ){ this.setNavigationContentDescription(text); } //设置toolbar标题 public void setToolbarTitle(String text ) { this.setTitle(text); } //设置toolbar颜色 public void setToolbarTitleColor(int color ) { this.setTitleTextColor(color); } //设置ToolBar子标题 public void setToolbarSubTitleText(String text ) { this.setSubtitle(text); } //设置toolbar子标题的颜色 public void setToolbarSubTitleTextColor(int color ) { this.setSubtitleTextColor(color); } }
然后布局引用activity_custome_toolbar
因为其实toolbar说白也是view也可以说是一个布局
所以我们只要根据自己需求往里面丢东西就ok,这里可能不全面,希望大家一起完善谢谢!
<?xml version="1.0" encoding="utf-8"?> <com.ldm.imitatewx.CustomeToolBar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="?attr/label_textSize" android:background="@android:color/holo_green_light" android:fitsSystemWindows="true" app:contentInsetLeft="0dp" app:contentInsetStart="0dp" app:popupTheme="@style/MyPopStyle" > <TextView android:id="@+id/lt_main_title_left" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:text="返回" android:gravity="center" android:drawableLeft="@drawable/ic_back_u" android:textColor="@android:color/white" android:singleLine="true" android:textSize="16sp" android:visibility="visible"/> <TextView android:id="@+id/lt_main_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:singleLine="true" android:textColor="@android:color/white" android:text="标题" android:textSize="20sp" android:visibility="visible" /> <TextView android:id="@+id/lt_main_title_right" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:layout_marginRight="10dp" android:text="返回" android:gravity="center" android:drawableRight="@drawable/ic_add" android:textColor="@android:color/white" android:singleLine="true" android:textSize="16sp" android:visibility="visible"/> </com.ldm.imitatewx.CustomeToolBar>
以上就是利用Android如何实现对 ToolBar进行整合,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。