1. 程式人生 > >Android5.0新特性:Toolbar標題欄

Android5.0新特性:Toolbar標題欄

package com.example.star.toolbar.activity;

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

import com.example.star.toolbar.R;
import com.example.star.toolbar.utils.MyToast;

public class MainActivity extends AppCompatActivity {

    private Toolbar toolbar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //初始化控制元件
        initView();

        //設定Toolbar
        setToolbar();
    }

    /**
     * 設定Toolbar
     * 給Toolbar加入各種屬性,並且設定為Toolbar
     */
    private void setToolbar() {
        //Logo
        toolbar.setLogo(R.drawable.ic_launcher);
        //Title 主標題
        toolbar.setTitle("主標題");
        //subTitle 副標題
        toolbar.setSubtitle("副標題");

        setSupportActionBar(toolbar);
        //返回鍵
        toolbar.setNavigationIcon(R.drawable.ic_launcher);

    }

    /**
     * 初始化控制元件
     * 這個地方可以用butterknife,簡寫程式碼。
     */
    private void initView() {
        toolbar = (Toolbar) findViewById(R.id.toolbar);
    }

    /**
     * Toolbar的選單的新增
     * @param menu
     * @return
     */
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_main,menu);
        return true;
    }

    /**
     * Toolbar的選單點選事件
     * @param item
     * @return
     */
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()){
            case R.id.menu_1:
                MyToast.show(this,"選單1");
                break;
            case R.id.menu_2:
                MyToast.show(this,"選單2");
                break;
            case R.id.menu_3:
                MyToast.show(this,"選單3");
                break;
            default:
                break;
        }

        return true;
    }
}