大佬教程收集整理的这篇文章主要介绍了android – 在导航抽屉中添加图标,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
继承我的代码:
public class MainActivity extends ActionBarActivity { private ListView mDrawerList; private DrawerLayout mDrawerLayout; private ArrayAdapter<String> mAdapter; private ActionBarDrawerToggle mDrawerToggle; private String mActivitytitle; @Override protected void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setContentView(R.layout.activity_main); mDrawerList = (ListView)findViewById(R.id.navList); mDrawerLayout = (DrawerLayout)findViewById(R.id.drawer_layout); mActivitytitle = gettitle().toString(); addDrawerItems(); setupDrawer(); FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.begintransaction().replace(R.id.flContent,new One()).commit(); getSupportActionBar().setDisplayHomeAsUpEnabled@R_262_6334@; getSupportActionBar().setHomeButtonEnabled@R_262_6334@; } private void addDrawerItems() { String[] osArray = { "Android","iOS","Windows","OS X","Linux" }; mAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,osArray); mDrawerList.setAdapter(mAdapter); mDrawerList.setOnItemClickListener(new AdapterView.onItemClickListener() { Fragment fragment = null; Class fragmentClass; @Override public void onItemClick(AdapterView<?> parent,View view,int position,long id) { switch (position) { case 1: fragmentClass = One.class; break; case 2: fragmentClass = Two.class; break; default: break; } try { fragment = (Fragment) fragmentClass.newInstance(); } catch (Exception E) { e.printStackTrace(); } // Insert the fragment by replacing any exisTing fragment FragmentManager fragmentManager=getSupportFragmentManager(); fragmentManager.begintransaction().replace(R.id.flContent,fragment).commit(); // Highlight the SELEcted item,update the title,and close the drawer mDrawerLayout.closeDrawers(); } }); } private void setupDrawer() { mDrawerToggle = new ActionBarDrawerToggle(this,mDrawerLayout,R.String.drawer_open,R.String.drawer_closE) { /** Called when a drawer has settled in a completely open state. */ public void onDrawerOpened(View drawerView) { super.onDrawerOpened(drawerView); getSupportActionBar().settitle("Navigation!"); invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu() } /** Called when a drawer has settled in a completely closed state. */ public void onDrawerClosed(View view) { super.onDrawerClosed(view); getSupportActionBar().settitle(mActivitytitlE); invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu() } }; mDrawerToggle.setDrawerInDicatorEnabled@R_262_6334@; mDrawerLayout.setDrawerListener(mDrawerTogglE); } @Override protected void onPostCreate(Bundle savedInstanceStatE) { super.onPostCreate(savedInstanceStatE); // Sync the toggle state after onRestoreInstanceState has occurred. mDrawerToggle.syncState(); } @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); mDrawerToggle.onConfigurationChanged(newConfig); } @Override public Boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main,menu); return true; } @Override public Boolean onOptionsItemSELEcted(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button,so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_setTings) { return true; } // Activate the navigation drawer toggle if (mDrawerToggle.onOptionsItemSELEcted(item)) { return true; } return super.onOptionsItemSELEcted(item); } }
<android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:fitsSystemWindows="true" app:menu="@menu/activity_main_drawer"> </android.support.design.widget.NavigationView>
在activity_main_drawer菜单文件中,用他们的名字定义你的图标
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://scheR_934_11845@as.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_camara" android:icon="@android:drawable/ic_menu_camera" android@R_788_6964@="Camera" /> <item android:id="@+id/nav_gallery" android:icon="@android:drawable/ic_menu_gallery" android@R_788_6964@="Gallery" /> <item android:id="@+id/nav_manage" android:icon="@android:drawable/ic_menu_manage" android@R_788_6964@="Manage" /> </group>
在MainActivity.java中调用每个项目的操作单击抽屉菜单
@Override public Boolean onNavigationItemSELEcted(MenuItem menuItem) { // Handle navigation view item clicks here. int id = menuItem.getItemId(); if (id == R.id.nav_camara) { // Call your Action } else if (id == R.id.nav_gallery) { // Call your Action } else if (id == R.id.nav_managE) { // Call your Action } }
以上是大佬教程为你收集整理的android – 在导航抽屉中添加图标全部内容,希望文章能够帮你解决android – 在导航抽屉中添加图标所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。