前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >5-VVI-材料设计之ToolBar

5-VVI-材料设计之ToolBar

作者头像
张风捷特烈
发布2018-09-29 11:26:58
4760
发布2018-09-29 11:26:58
举报
一:Toolbar简单使用

1.color.xml中(颜色效果见下图):

代码语言:javascript
复制
    <color name="zise">#9370DB</color><!-- 紫色 -->
    <color name="goldenrod">#DAA520</color><!-- 金麒麟色 -->
    <color name="aqua">#00FFFF</color><!-- 浅绿色 -->
    <color name="cornflowerblue">#6495ED</color><!-- 菊兰色 -->
    <color name="ghostwhite">#F8F8FF</color><!-- 幽灵白 -->

2.style.xml:

代码语言:javascript
复制
<resources>
    <style name="BaseTheme" parent="Theme.AppCompat">
        <!--状态栏颜色-->
        <item name="colorPrimaryDark">@color/goldenrod</item>
        <!--toorbar颜色-->
        <item name="colorPrimary">@color/zise</item>
        <!--文字颜色-->
        <item name="android:textColorPrimary">@color/cornflowerblue</item>
        <!--内部控件强调色-->
        <item name="colorAccent">@color/aqua</item>
        <!--背景色-->
        <item name="android:windowBackground">@color/ghostwhite</item>
    </style>
</resources>

3.为测试colorAccent,activity_main.xml中加入EditText:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="zdl.toolbartest.MainActivity">

<EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
</LinearLayout>

4.AndroidManifest.xml中使用(<application中,作用全局;<activity中,作用当前):

代码语言:javascript
复制
android:theme="@style/BaseTheme"

5.使用效果:

使用效果.jpg


二:自定义ToolBar
1.添加无栏样式:
代码语言:javascript
复制
 <style name="NoBar" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimaryDark">@color/goldenrod</item>
        <item name="colorPrimary">@color/zise</item>
        <item name="colorAccent">@color/aqua</item>
        <item name="android:textColorPrimary">@color/cornflowerblue</item>
        <item name="android:windowBackground">@color/ghostwhite</item>
</style>
2.AndroidManifest.xml中使用(<activity中):
代码语言:javascript
复制
android:theme="@style/NoBar"

20171217110251718.jpg

3.activity_main.xml中加入Toolbar:
代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    tools:context="zdl.toolbartest.MainActivity">
 
<android.support.v7.widget.Toolbar
    android:id="@+id/my_tb"
    app:logo="@drawable/xl"
    app:title="捷特"
    app:subtitle="天下无双"
    app:navigationIcon="@drawable/head"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/zise"
    >
</android.support.v7.widget.Toolbar>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
 
</LinearLayout>

20171217112916509.jpg

4.使用代码:
代码语言:javascript
复制
public class MainActivity extends AppCompatActivity {
 
    private Toolbar mTb;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mTb = (Toolbar) findViewById(R.id.my_tb);//通过id获取mTb对象
        mTb.setLogo(R.drawable.xl);//logo
        mTb.setTitle("捷特!");//主标题
        mTb.setSubtitle("天下无双");//副标题
        mTb.setNavigationIcon(R.drawable.head);//最左端图标
    }
}

20171217114829903.jpg


三:menu使用

1.menu_main.xml(其中要注意 app:showAsAction="always" 使小图标显示)

代码语言:javascript
复制
<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      xmlns:tools="http://schemas.android.com/tools"
      tools:context="zdl.toolbartest.MainActivity">
    <item
        android:id="@+id/bar_add"
        android:orderInCategory="1"
        android:icon="@drawable/add"
        android:title="添加"
        app:showAsAction="always"/>
 
    <item
        android:id="@+id/bar_delete"
        android:icon="@drawable/delete"
        android:orderInCategory="2"
        app:showAsAction="always"
        android:title="设置"/>
    <item
        android:id="@+id/bar_refresh"
        android:icon="@drawable/refresh"
        android:orderInCategory="3"
        app:showAsAction="always"
        android:title="刷新"/>
</menu>
2.MainActivity.java中:
代码语言:javascript
复制
 @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_main, menu);//添加菜单
        return true;
}
3.可以使用Toolbar添加菜单子项的点击事件:
代码语言:javascript
复制
 mTb.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                switch (item.getItemId()) {
                    case R.id.bar_add:
                        //TODO: something
                        Zutil.Toastshow("添加");
                        break;
                    case R.id.bar_delete:
                        //TODO: something
                        Zutil.Toastshow("删除");
                        break;
                    case R.id.bar_refresh:
                        //TODO: something
                        Zutil.Toastshow("更新");
                        break;
                }
                return false;
            }
        });
    }

点击事件.jpg

后记、
1.声明:

[1]本文由张风捷特烈原创,转载请注明 [2]欢迎广大编程爱好者共同交流 [3]个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正 [4]你的喜欢与支持将是我最大的动力

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.09.14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一:Toolbar简单使用
  • 二:自定义ToolBar
    • 1.添加无栏样式:
      • 2.AndroidManifest.xml中使用(<activity中):
        • 3.activity_main.xml中加入Toolbar:
          • 4.使用代码:
            • 三:menu使用
              • 2.MainActivity.java中:
                • 3.可以使用Toolbar添加菜单子项的点击事件:
                • 后记、
                  • 1.声明:
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档