2015-04-27 250 views
-1

我已經加入導航抽屜包含PagerSlidingStrip.I可以看到導航抽屜裏,當我從左邊到屏幕的右側滑動,但我看不出在行動導航抽屜圖標的活動顯示圖標酒吧。 下面是我的代碼 -抽屜式導航欄不動作條

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <FrameLayout 
     android:id="@+id/content_frame_main" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 
    <com.astuetz.PagerSlidingTabStrip 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="48dip" 
     android:background="#8E58D4" 
     app:pstsIndicatorColor="#5B349E" 

     app:pstsDividerColor="#8E58D4" 
     app:pstsTabSwitch="true" 
     /> 
    <android.support.v4.view.ViewPager 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/viewPager" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@+id/tabs" 
     android:layout_alignParentBottom="true" /> 


</RelativeLayout> 

    <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:background="#111"/> 
    </android.support.v4.widget.DrawerLayout> 
+0

你見過我的回答 – Lokesh

+0

@Lokesh啊.. +一到烏爾答案。 –

+0

是爲你工作 – Lokesh

回答

0

使用此

getSupportActionBar().setDisplayUseLogoEnabled(true); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    getSupportActionBar().setLogo(R.drawable.ic_launcher); 
    getSupportActionBar().setDisplayShowHomeEnabled(true); 

這可能會幫助你

+0

它顯示導航抽屜圖標,帶回來icon..but不上點擊圖標 –

1

使用

  ActionBar actionBar = getSupportActionBar(); 
     actionBar .setDisplayHomeAsUpEnabled(true); 
     actionbar.setDisplayShowHomeEnabled(true); 
      actionBar.setHomeButtonEnabled(true); 

,並使用

getActionBar().setDisplayHomeAsUpEnabled(true); // also required 
    if (Build.VERSION.SDK_INT >= 18) { 
     getActionBar().setHomeAsUpIndicator(
      getResources().getDrawable(R.drawable.ic_navigation_drawer)); 
    } 
+0

沒有打開導航抽屜沿着我看到後面的圖標,而不是導航抽屜圖標,如果我加入這個.. –

+0

使用actionbar.setDisplayShowHomeEnabled(真); –

+0

仍呈現回唯一的圖標... –

0

刪除此行,因爲這是造成你的動作條是非可變

final ActionBar actionBar = getSupportActionBar(); 

,並有此

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    getSupportActionBar().setHomeButtonEnabled(true); 

和改變操作欄標題通過重寫此

@Override 
public void setTitle(CharSequence title) { 
    mTitle = title; 
    getSupportActionBar().setTitle(mTitle); 
} 
+0

如果我添加這個,我會看到後退圖標而不是導航抽屜圖標。 –

1

添加此

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    super.onCreateOptionsMenu(menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    return super.onOptionsItemSelected(item); 
} 
1

嘗試此可見你的菜單圖標。

 actionBar = getActionBar(); 
     actionBar.setDisplayShowTitleEnabled(true); 
     actionBar.setDisplayUseLogoEnabled(false); 
     actionBar.setDisplayHomeAsUpEnabled(false); 
     actionBar.setDisplayUseLogoEnabled(false); 
     actionBar.setHomeButtonEnabled(true); 
     actionBar.setIcon(R.drawable.menu); 

和覆蓋onOptionsItemSelected像下面打開的抽屜

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case android.R.id.home: 
     //Open your drawer here 
     break; 
    } 
    return super.onOptionsItemSelected(item); 
} 
1

添加下面的代碼

/** 
    * When using the ActionBarDrawerToggle, you must call it during 
    * onPostCreate() and onConfigurationChanged()... 
    */ 

    @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); 
     // Pass any configuration change to the drawer toggls 
     mDrawerToggle.onConfigurationChanged(newConfig); 
    }