美文网首页
ToolBar的初步使用

ToolBar的初步使用

作者: zhong_bao | 来源:发表于2017-07-27 13:57 被阅读0次

android.support.v7.widget.Toolbar的针对于Activity的用法

1、配置
ToolBar要求我们的Activity主题必须是NoActionBar,所以在我们的appTheme设置为

 <!-- BaseTheme -->
    <style name="BaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

其次是我们的布局toolbar.xml,按照我们的布局特性可以自行定制和添加监听

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolBar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fitsSystemWindows="true"
    android:minHeight="?attr/actionBarSize"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    android:background="@color/colorPrimary"
   >

    <RelativeLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:id="@+id/tv_title"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:singleLine="true"
            android:text="title"
            android:textColor="@android:color/white"
            android:textSize="20sp"
            android:layout_marginRight="15dp"
            />

        <TextView
            android:id="@+id/tv_title_more"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp"
            android:text="title right"
            android:textColor="@android:color/white"
            android:textSize="20sp"
            android:visibility="gone"
             />
    </RelativeLayout>
</android.support.v7.widget.Toolbar>

最后是我们的BaseActivity的配置如下:

  @BindView(R.id.toolBar)
    Toolbar mToolbar;
    @BindView(R.id.tv_title)
    TextView mTitleTv;
    @BindView(R.id.tv_title_more)
    TextView mTitleRightTv;

    public FragmentManager mFm;


/***************** Toobar ******************/
    public void initTitle(String title){
        setSupportActionBar(mToolbar);
        mToolbar.setNavigationIcon(android.support.v7.appcompat.R.drawable.abc_ic_ab_back_material);
        mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                popBack();
            }
        });
        mTitleTv.setVisibility(View.VISIBLE);
        mTitleTv.setText(title);
        getSupportActionBar().setDisplayShowTitleEnabled(false);
    }

    public void setTitleRight(String title,View.OnClickListener listener){

        mTitleRightTv.setVisibility(View.VISIBLE);
        mTitleRightTv.setText(title);
        mTitleRightTv.setOnClickListener(listener);
    }

    public void popBack() {
        mFm =  getSupportFragmentManager();
        if (mFm.getBackStackEntryCount() > 0)
            mFm.popBackStack();
        else
            finish();
    }
    /***************** Toobar ******************/

2、使用
每一个Activity中我们必须在其布局xx.xml文件添加一个

 <include
        android:id="@+id/toolBar"
        layout="@layout/toolbar"/>

最后调用方法 initTitle("痛痛痛!!!");

3 、效果图

toobar.png

相关文章

网友评论

      本文标题:ToolBar的初步使用

      本文链接:https://www.haomeiwen.com/subject/tdezkxtx.html