Material Design控件之Toolbar

以下内容全部或部分转自或参考于网络。

一、Toolbar的常用属性、方法和事件

属性:

Title        主标题

Subtitle     副标题

方法:

SetTitle()               设置主标题

SetTitleTextColor()      设置主标题颜色

SetSubtitle()            设置副标题

SetSubtitleTextColor()     设置副标题颜色

SetLogo()                设置Logo

SetNavigationIcon()      设置导航菜单

InflateMenu()            设置溢出菜单

事件:

NavigationClick          导航菜单点击事件

MenuItemClick            溢出菜单点击事件

二、Toolbar的使用方法

Main.axml中代码如下

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
  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="match_parent">
  <android.support.v7.widget.Toolbar
  android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#33B86C"/>

</android.support.design.widget.CoordinatorLayout>

color.xml中代码如下

<?xml version="1.0" encoding="utf-8" ?>
<resources>
  <color name="ColorPrimary">#2196F3</color>
  <color name="ColorPrimaryDark">#1976D2</color>
  <color name="white">#FFFFFF</color> <!--白色 -->

</resources>

style.xml中代码如下

<?xml version="1.0" encoding="utf-8" ?>
<resources>
  <style name="Theme.DesignDemo" parent="Base.Theme.DesignDemo"></style>
  <style name="Base.Theme.DesignDemo" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/ColorPrimary</item>
    <item name="colorPrimaryDark">@color/ColorPrimaryDark</item>
  </style>

</resources>

toolmenu.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/toolmenu1"
      android:title=""
      android:icon="@drawable/tag_blue_add"
      app:showAsAction="ifRoom"
      android:textSize="16dp"/>
  <item android:id="@+id/toolmenu2"
      android:title=""
      android:icon="@drawable/tag_blue_delete"
      app:showAsAction="ifRoom"
      android:textSize="16dp"/>
  <item android:id="@+id/toolmenu3"
    android:title="item_01"
    app:showAsAction="never"/>
   
  <item android:id="@+id/toolmenu4"
    android:title="item_02"
    app:showAsAction="never"/>

</menu>

MainAactivity.cs中代码如下

using Android.Support.V7.App;
using V7Toolbar = Android.Support.V7.Widget.Toolbar;
using Android.App;
using Android.OS;
using Android.Widget;
namespace TestToolbar
{
    [Activity(Label = "TestToolbar", MainLauncher = true, Icon = "@drawable/icon",Theme = "@style/Theme.DesignDemo")]
    public class MainActivity : AppCompatActivity
    {
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);
            var toolbar = FindViewById<V7Toolbar>(Resource.Id.toolbar);
            toolbar.SetLogo(Resource.Drawable.Icon);
            toolbar.SetNavigationIcon(Resource.Drawable.add);
            toolbar.InflateMenu(Resource.Menu.toolmenu);
            toolbar.SetTitle(Resource.String.appTitle);
            toolbar.SetSubtitle(Resource.String.subTitle);
            toolbar.NavigationClick += (sender, e) =>
            {
                Toast.MakeText(this, "Navigation Menu", ToastLength.Long).Show();
            };
            toolbar.MenuItemClick += (sender, e) => {
                if(e.Item.ItemId == Resource.Id.toolmenu1)
                {
                    Toast.MakeText(this, "menu1",ToastLength.Long).Show();
                }
                else if(e.Item.ItemId == Resource.Id.toolmenu3)
                {
                    Toast.MakeText(this, "menu3", ToastLength.Long).Show();
                }
            };
        }
    }

}

从模拟器截取的效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值