Android Toolbar用法

发表于

Toolbar是谷歌官方推出的v7包里的控件,替代Actionbar,感觉很好用。

我用的Android Studio。

实现效果:

20160331172401

布局里定义控件:


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
    tools:context="me.zuichu.myapplication.MainActivity">

    <android.support.v7.widget.Toolbar
        android:id="@+id/id_toolbar"
        app:theme="@style/ToolbarTheme.Base"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:titleTextColor="#ffffff"
        android:background="?attr/colorPrimary" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/id_toolbar"
        android:text="Hello World!" />
</RelativeLayout>

style设置:


<!-- Base application theme. -->
    <style name="AppTheme" 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>
    <!-- My Toolbar theme -->
    <style name="ToolbarTheme.Base" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
        <item name="colorControlNormal">#FFFFFF</item>
    </style>

Activity代码:


package com.whatjay.myapplication;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.id_toolbar);
        // App Logo
        toolbar.setLogo(R.mipmap.ic_launcher);
        // Title
        toolbar.setTitle("App Title");
        // Sub Title
        toolbar.setSubtitle("Sub title");
        setSupportActionBar(toolbar);
        toolbar.setNavigationIcon(R.mipmap.icon_home_b);
        toolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "导航", Toast.LENGTH_SHORT).show();
            }
        });
        toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                switch (item.getItemId()) {
                    case R.id.action_edit:
                        Toast.makeText(MainActivity.this, "edit编辑", Toast.LENGTH_SHORT).show();
                        break;
                    case R.id.action_share:
                        Toast.makeText(MainActivity.this, "share分享", Toast.LENGTH_SHORT).show();
                        break;
                    case R.id.action_settings:
                        Toast.makeText(MainActivity.this, "settings设置", Toast.LENGTH_SHORT).show();
                        break;
                    case R.id.action_settings2:
                        Toast.makeText(MainActivity.this, "settings设置2", Toast.LENGTH_SHORT).show();
                        break;
                }
                return true;
            }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return super.onCreateOptionsMenu(menu);
    }
}

menu/menu_main.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"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">
    <item
        android:id="@+id/action_edit"
        android:icon="@mipmap/ic_launcher"
        android:orderInCategory="80"
        android:title="@string/edit"
        app:showAsAction="ifRoom" />

    <item
        android:id="@+id/action_share"
        android:icon="@mipmap/icon_home_b"
        android:orderInCategory="90"
        android:title="@string/share"
        app:showAsAction="ifRoom" />

    <item
        android:id="@+id/action_settings"
        android:icon="@mipmap/icon_home_b"
        android:orderInCategory="100"
        android:title="@string/set"
        app:showAsAction="never" />
    <item
        android:id="@+id/action_settings2"
        android:icon="@mipmap/icon_home_b"
        android:orderInCategory="100"
        android:title="@string/set2"
        app:showAsAction="never" />
</menu>

20160420145845

 


文章评论
共收到 0 条评论