Android导航抽屉不显示汉堡包
为什么我的android导航抽屉没有显示汉堡包图标。 我已经做了所有应该做的事情,但还没有展示出来Android导航抽屉不显示汉堡包,android,android-layout,navigation-drawer,hamburger-menu,drawertoggle,Android,Android Layout,Navigation Drawer,Hamburger Menu,Drawertoggle,为什么我的android导航抽屉没有显示汉堡包图标。 我已经做了所有应该做的事情,但还没有展示出来 public class Main extends ActionBarActivity { private String[] mPlanetTitles; private DrawerLayout mDrawerLayout; private ListView mDrawerList;
public class Main extends ActionBarActivity {
private String[] mPlanetTitles;
private DrawerLayout mDrawerLayout;
private ListView mDrawerList;
private CharSequence mTitle;
private ActionBarDrawerToggle mDrawerToggle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.maina);
mTitle = "test";
ArrayList<Integer> draw=new ArrayList();
draw.add(R.drawable.elec);draw.add(R.drawable.mob);draw.add(R.drawable.auto);draw.add(R.drawable.pet);draw.add(R.drawable.est);
mPlanetTitles = new String[]{"Electronic ads", "Mobile ads", "Automobile ads","Pets ads","Real Estate ads"};
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ListView) findViewById(R.id.left_drawer);
Adapt c=new Adapt(this,draw);
mDrawerList.setAdapter(c);
DisplayMetrics displayMetrics =getApplicationContext().getResources().getDisplayMetrics();
int height=(int)((300 * displayMetrics.density) + 0.5);
GridView g=(GridView)findViewById(R.id.gridview);
ImageAdapter a=new ImageAdapter(this,draw);
g.setAdapter(a);
g.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
startActivity(new Intent(Main.this, MainActivity.class));
}
});
// Set the adapter for the list view
// mDrawerList.setAdapter(new ArrayAdapter<String>(this,
// R.layout.drawer_list_item, mPlanetTitles));
// Set the list's click listener
mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
mDrawerList.setItemChecked(i, true);
//setTitle(mPlanetTitles[position]);
mDrawerLayout.closeDrawer(mDrawerList);
}
});
mDrawerToggle = new ActionBarDrawerToggle(
this, /* host Activity */
mDrawerLayout, /* DrawerLayout object */
R.drawable.ic_drawer, /* nav drawer icon to replace 'Up' caret */
R.string.drawer_open, /* "open drawer" description */
R.string.drawer_close /* "close drawer" description */
) {
/** Called when a drawer has settled in a completely closed state. */
public void onDrawerClosed(View view) {
mDrawerToggle.syncState();
getSupportActionBar().setTitle(mTitle);
invalidateOptionsMenu();
}
/** Called when a drawer has settled in a completely open state. */
public void onDrawerOpened(View drawerView) {
mDrawerToggle.syncState();
getSupportActionBar().setTitle(mTitle);
mDrawerList.bringToFront();
invalidateOptionsMenu();
}
};
// Set the drawer toggle as the DrawerListener
mDrawerLayout.setDrawerListener(mDrawerToggle);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setIcon(R.drawable.ic_drawer);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
mDrawerToggle.syncState();
// Sync the toggle state after onRestoreInstanceState has occurred.
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
mDrawerToggle.onConfigurationChanged(newConfig);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Pass the event to ActionBarDrawerToggle, if it returns
// true, then it has handled the app icon touch event
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
// Handle your other action bar items...
return super.onOptionsItemSelected(item);
}
/**
* Swaps fragments in the main content view
*/
private void selectItem(int position) {
Toast.makeText(this, R.string.app_name, Toast.LENGTH_SHORT).show();
// Highlight the selected item, update the title, and close the drawer
mDrawerList.setItemChecked(position, true);
setTitle(mPlanetTitles[position]);
mDrawerLayout.closeDrawer(mDrawerList);
}
@Override
public void setTitle(CharSequence title) {
mTitle = title;
getSupportActionBar().setTitle(mTitle);
}
private class DrawerItemClickListener implements ListView.OnItemClickListener {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
selectItem(position);
}
}
}
public类Main扩展了ActionBarActivity{
私有字符串[]mplanettiles;
私人抽屉布局mDrawerLayout;
私有列表视图mDrawerList;
私有字符序列mTitle;
私有操作bardrawertoggle mDrawerToggle;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.maina);
mTitle=“测试”;
ArrayList draw=新建ArrayList();
draw.add(R.drawable.elec);draw.add(R.drawable.mob);draw.add(R.drawable.auto);draw.add(R.drawable.pet);draw.add(R.drawable.est);
mPlanetTitles=新字符串[]{“电子广告”、“手机广告”、“汽车广告”、“宠物广告”、“房地产广告”};
mDrawerLayout=(抽屉布局)findViewById(R.id.抽屉布局);
mDrawerList=(ListView)findViewById(R.id.left\u抽屉);
自适应c=新自适应(此,绘制);
mDrawerList.setAdapter(c);
DisplayMetrics DisplayMetrics=getApplicationContext().getResources().getDisplayMetrics();
int高度=(int)((300*displayMetrics.density)+0.5);
GridView g=(GridView)findViewById(R.id.GridView);
ImageAdapter a=新的ImageAdapter(此,绘制);
g、 设置适配器(a);
g、 setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
startActivity(新意图(Main.this,MainActivity.class));
}
});
//设置列表视图的适配器
//mDrawerList.setAdapter(新阵列适配器,
//R.布局图.抽屉(列表项,MPLANETITLES);
//设置列表的单击侦听器
mDrawerList.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
mDrawerList.setItemChecked(i,true);
//setTitle(mPlanetTitles[位置]);
mDrawerLayout.closeDrawer(mDrawerList);
}
});
mDrawerToggle=新操作bardrawertoggle(
此,/*主机活动*/
mDrawerLayout,/*抽屉布局对象*/
R.drawable.ic_抽屉,/*导航抽屉图标替换“Up”插入符号*/
R.string.drawer\u open,/*“open drawer”说明*/
R.string.drawer\u close/*“close drawer”说明*/
) {
/**当抽屉处于完全关闭状态时调用*/
公共无效onDrawerClosed(视图){
mDrawerToggle.syncState();
getSupportActionBar().setTitle(mTitle);
无效操作菜单();
}
/**当抽屉处于完全打开状态时调用*/
打开图纸上的公共空白(视图抽屉视图){
mDrawerToggle.syncState();
getSupportActionBar().setTitle(mTitle);
mDrawerList.bringToFront();
无效操作菜单();
}
};
//将抽屉开关设置为抽屉定位器
mDrawerLayout.setDrawerListener(mDrawerToggle);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setIcon(R.drawable.ic_抽屉);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.main,menu);
返回true;
}
@凌驾
后期创建时受保护的空(捆绑包savedInstanceState){
super.onPostCreate(savedInstanceState);
mDrawerToggle.syncState();
//在onRestoreInstanceState发生后同步切换状态。
}
@凌驾
公共无效OnConfiguration已更改(配置newConfig){
super.onConfigurationChanged(newConfig);
mDrawerToggle.onConfigurationChanged(newConfig);
}
@凌驾
公共布尔值onOptionsItemSelected(菜单项项){
//如果返回,则将事件传递给ActionBarDrawerToggle
//则它已处理应用程序图标触摸事件
如果(MDRAWERTOGLE.onOptionsItemSelected(项目)){
返回true;
}
//处理其他操作栏项。。。
返回super.onOptionsItemSelected(项目);
}
/**
*在主内容视图中交换片段
*/
私有void selectItem(内部位置){
Toast.makeText(this,R.string.app_name,Toast.LENGTH_SHORT).show();
//突出显示所选项目,更新标题,然后关闭抽屉
mDrawerList.setItemChecked(位置,true);
setTitle(mPlanetTitles[位置]);
mDrawerLayout.closeDrawer(mDrawerList);
}
@凌驾
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!-- The main content view -->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<GridView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:numColumns="3"
android:gravity="center"
android:stretchMode="columnWidth"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:layout_height="match_parent"/>
</RelativeLayout>
<!-- The navigation drawer -->
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
/>
</android.support.v4.widget.DrawerLayout>