美文网首页
android--添加toolbar

android--添加toolbar

作者: 追逐丶 | 来源:发表于2017-03-28 12:59 被阅读224次

    1、添加NoActionbar的Style

    <resources>
        <!-- Base application theme. -->
        <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
            <!-- Customize your theme here. -->
            <item name="colorPrimary">@color/colorPrimary</item>
            <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
            <item name="colorAccent">@color/colorAccent</item>
        </style>
        <!--上面是默认的 下面是添加的 -->
        <style name="AppTheme.NoActionBar">
            <item name="windowActionBar">false</item>
            <item name="windowNoTitle">true</item>
        </style>
    </resources>
    

    2、修改Activity的theme

    在AndroidManifest.xml中给activity添加theme,

        <application
        ···
            <activity
                android:name=".MainActivity"
                android:theme="@style/AppTheme.NoActionBar">
            ···
            </activity>
       </application>
    

    3、添加toolbar控件

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                android:elevation="4dp"
                android:background="?attr/colorPrimary" />
    

    4、setSupportActionBar

    这里的toolbar为android.support.v7.widget.Toolbar

            toolbar = (Toolbar) findViewById(R.id.toolbar);
            setSupportActionBar(toolbar);
    

    这样子就像以往一样正常使用了

    5、添加菜单项

    菜单布局:

    <?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">
    
        <group>
            <item
                android:id="@+id/switch_mode"
                android:icon="@mipmap/all"
                app:showAsAction="always"
                android:title="@string/nemu_loack" />
            <item
                android:id="@+id/switch_bg"
                android:icon="@mipmap/pic"
                app:showAsAction="ifRoom"
                android:title="@string/bg_load" />
            <item
                android:id="@+id/justy_size"
                android:icon="@mipmap/move"
                app:showAsAction="never"
                android:title="@string/set_size" />
            ···
        </group>
    </menu>
    

    逻辑实现:

        //加载菜单项
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.compass_menu,menu);
            return super.onCreateOptionsMenu(menu);
        }
        //逻辑框架
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            int id= item.getItemId();
            switch (id){
                case R.id.switch_mode:
                    break;
                case R.id.switch_bg:
                    break;
                case R.id.justy_size:
                    break;
                default:
                    break;
            }
            return super.onOptionsItemSelected(item);
        }
    

    相关文章

      网友评论

          本文标题:android--添加toolbar

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