ToolBar使用记录

来源:互联网 发布:js 判断手机号码 编辑:程序博客网 时间:2024/05/22 12:50

一.ToolBar
1.首先在xml声明

<android.support.v7.widget.Toolbar            android:id="@+id/toolbar_news_details"            android:layout_width="match_parent"            android:layout_height="?attr/actionBarSize"//安照actionBar的高度            app:popupTheme="@style/ToolbarPopupTheme" //Menu的主题            app:layout_collapseMode="pin" // 是否隐藏导航箭头            >           <TextView                android:id="@+id/title_news_datails"                android:layout_width="wrap_content"                android:layout_height="wrap_content"/>

2.在res新建menu文件夹添加如下xml:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:app="http://schemas.android.com/apk/res-auto"><item android:id="@+id/open_on_browser"      android:icon="@drawable/ic_launcher"      android:title="在浏览器中打开"      app:showAsAction="never"/><item android:id="@+id/share"      android:icon="@drawable/ic_launcher"      android:title="分享"      app:showAsAction="never"/><item android:id="@+id/refresh"      android:icon="@drawable/ic_refresh_white_18dp"      android:title="刷新"      app:showAsAction="always"/><item android:id="@+id/copy_url"      android:icon="@drawable/ic_launcher"      android:title="复制网址"      app:showAsAction="never"/>    </menu>    //关于shownAsAction可以自行百度

3.代码中实现:

private void initToolbar() {    mTitleNewsDatails.setText(mTitle);    mToolbarNewsDetails.inflateMenu(R.menu.news_details_menu);    mToolbarNewsDetails.setNavigationIcon(R.drawable.ic);    mToolbarNewsDetails.setNavigationOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View v) {            finish();        }    });    mToolbarNewsDetails.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {        @Override        public boolean onMenuItemClick(MenuItem item) {            int itemId = item.getItemId();            switch (itemId) {                case R.id.open_on_browser:                    break;                case R.id.share:                    break;                case R.id.refresh:                    break;                case R.id.copy_url:                    break;                default:                    break;            }            return false;        }    });

二.可以折叠的ToolBar

//只改变xml即可:<?xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_news_details"android:layout_width="match_parent"android:layout_height="match_parent"><android.support.design.widget.AppBarLayout    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">    <android.support.design.widget.CollapsingToolbarLayout        android:id="@+id/toolbarlayout"        android:layout_width="match_parent"        android:layout_height="wrap_content"        app:contentScrim="?attr/colorPrimary"        app:expandedTitleMarginEnd="64dp"        app:expandedTitleMarginStart="48dp"        app:layout_scrollFlags="scroll|enterAlways"        >    <!--app:layout_scrollFlags="scroll|exitUntilCollapsed"-->        <android.support.v7.widget.Toolbar            android:id="@+id/toolbar_news_details"            android:layout_width="match_parent"            android:layout_height="?attr/actionBarSize"            app:popupTheme="@style/ToolbarPopupTheme"            app:layout_collapseMode="pin">            <TextView                android:id="@+id/title_news_datails"                android:layout_width="wrap_content"                android:layout_height="wrap_content"/>        </android.support.v7.widget.Toolbar>    </android.support.design.widget.CollapsingToolbarLayout></android.support.design.widget.AppBarLayout></android.support.design.widget.CoordinatorLayout>
原创粉丝点击