BottomNavigationView
1.BottomNavigationView 由3部分组成,首先是layout
1 <android.support.design.widget.BottomNavigationView 2 android:id="@+id/navigation" 3 android:layout_width="match_parent" 4 android:layout_height="wrap_content" 5 android:layout_gravity="bottom" 6 android:background="?android:attr/windowBackground" 7 app:menu="@menu/bottomnav_menu" />
2.创建menu
1 <?xml version="1.0" encoding="utf-8"?> 2 <menu xmlns:android="http://schemas.android.com/apk/res/android"> 3 <item 4 android:id="@+id/navigation_hunt" 5 android:icon="@mipmap/ic_home_white_48dp" 6 android:title="@string/main_title1" /> 7 8 <item 9 android:id="@+id/navigation_hall" 10 android:icon="@mipmap/ic_photo_camera_white_48dp" 11 android:title="@string/main_title2" /> 12 13 <item 14 android:id="@+id/navigation_treasury" 15 android:icon="@mipmap/ic_redeem_white_48dp" 16 android:title="@string/main_title3" /> 17 18 </menu>
3.代码部分主要有两个点,onCreate中设置listener,和编写事件响应方法
1 package com.mazingtec.mazing; 2 3 import android.support.annotation.NonNull; 4 import android.support.design.widget.BottomNavigationView; 5 import android.support.v7.app.AppCompatActivity; 6 import android.os.Bundle; 7 import android.support.v7.widget.Toolbar; 8 import android.view.Menu; 9 import android.view.MenuItem; 10 import android.view.View; 11 import android.widget.TextView; 12 import android.widget.Toast; 13 14 public class Hall extends AppCompatActivity implements View.OnClickListener{ 15 16 private TextView toolbartitle; 17 18 private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener 19 = new BottomNavigationView.OnNavigationItemSelectedListener() { 20 21 @Override 22 public boolean onNavigationItemSelected(@NonNull MenuItem item) { 23 switch (item.getItemId()) { 24 case R.id.navigation_hunt: 25 toolbartitle.setText(R.string.main_title1); 26 return true; 27 28 case R.id.navigation_hall: 29 toolbartitle.setText(R.string.main_title2); 30 return true; 31 32 case R.id.navigation_treasury: 33 toolbartitle.setText(R.string.main_title3); 34 return true; 35 } 36 return false; 37 } 38 39 }; 40 41 @Override 42 protected void onCreate(Bundle savedInstanceState) { 43 super.onCreate(savedInstanceState); 44 setContentView(R.layout.activity_hall); 45 46 toolbartitle = (TextView) findViewById(R.id.toolbar_title); 47 48 Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 49 toolbar.setTitle(""); 50 setSupportActionBar(toolbar); 51 getSupportActionBar().setDisplayHomeAsUpEnabled(true); 52 getSupportActionBar().setHomeButtonEnabled(true); 53 54 BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation); 55 navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); 56 } 57 58 @Override 59 public void onClick(View v) { 60 61 } 62 63 @Override 64 public boolean onCreateOptionsMenu(Menu menu) { 65 // Inflate the menu; this adds items to the action bar if it is present. 66 getMenuInflater().inflate(R.menu.toolbar_menu, menu); 67 return true; 68 } 69 70 @Override 71 public boolean onOptionsItemSelected(MenuItem item) { 72 // Handle action bar item clicks here. The action bar will 73 // automatically handle clicks on the Home/Up button, so long 74 // as you specify a parent activity in AndroidManifest.xml. 75 int id = item.getItemId(); 76 77 //noinspection SimplifiableIfStatement 78 if (id == R.id.action_search) { 79 Toast.makeText(this, "搜索!", Toast.LENGTH_LONG).show(); 80 return true; 81 } 82 83 if (id == android.R.id.home) { 84 Toast.makeText(this, "哈哈!", Toast.LENGTH_LONG).show(); 85 return true; 86 } 87 88 return super.onOptionsItemSelected(item); 89 } 90 }

浙公网安备 33010602011771号