您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關利用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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。