Toolbar的簡單使用

//styles
改爲NoActionBar
//佈局
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width=“match_parent”
android:layout_height=“130dp”
android:layout_weight=“1”
android:background="#1b5fff"
>

</android.support.v7.widget.Toolbar>

//res/menu/menu.xml


Activity
package com.example.choujiang;

import android.annotation.SuppressLint;
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 android.widget.Toast;

public class MainActivity extends AppCompatActivity implements Toolbar.OnMenuItemClickListener {

private Toolbar toolbar;

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    toolbar = findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    toolbar.setTitle("標題");
    //app的圖標
    //toolbar.setLogo(R.drawable.ic_launcher_background);
    //toolbar.setNavigationIcon(R.mipmap.ic_launcher);
    //設置副標題
    toolbar.setSubtitle("德倫狗");
    //設定菜單個按鈕的動作
    toolbar.setOnMenuItemClickListener(this);
    //上級按鈕
    getSupportActionBar().setHomeButtonEnabled(true);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem menuItem) {
            if (menuItem.getItemId()==R.id.action_settings){
                Toast.makeText(MainActivity.this, "打開", Toast.LENGTH_SHORT).show();
            }
            return false;
        }
    });
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_mian,menu);
    return super.onCreateOptionsMenu(menu);
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()){
        case android.R.id.home:
            finish();
            break;
        case R.id.action_settings:
            Toast.makeText(MainActivity.this, "打開", Toast.LENGTH_SHORT).show();
            break;
    }
    return super.onOptionsItemSelected(item);
}

@Override
public boolean onMenuItemClick(MenuItem menuItem) {

    return false;
}



//每次顯示前都會調用
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    //menu.clear();
    //menu.add();
    return super.onPrepareOptionsMenu(menu);
}
//關閉的時候調用
@Override
public void onOptionsMenuClosed(Menu menu) {
    Toast.makeText(this, "關閉", Toast.LENGTH_SHORT).show();
    super.onOptionsMenuClosed(menu);
}
//打開的時候調用

@Override
public boolean onMenuOpened(int featureId, Menu menu) {
    Toast.makeText(this, "打開", Toast.LENGTH_SHORT).show();
    return super.onMenuOpened(featureId, menu);
}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章