ActionBarDrawerToggle ne définit pas l'indicateur de tiroir
Je suis en train d'ajouter la navigation tiroir de mon application.. Tout fonctionne bien, Mais maintenant, j'ai toujours l'icône de la flèche, bien que je l'ai remplacé par le ic_drawer à partir d'Android? Voici mon code:
private ActionBarDrawerToggle mDrawerToggle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DrawerLayout mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
ExpandableListView mDrawerList = (ExpandableListView) findViewById(R.id.left_drawer);
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow,
GravityCompat.START);
mDrawerList.setAdapter(new DrawerListAdapter(this));
mDrawerList.setOnChildClickListener(new DrawerItemClickListener());
mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
R.drawable.ic_launcher, R.string.drawer_open,
R.string.drawer_close);
Log.d("Mudit",
"mDrawerToggle" + mDrawerToggle.isDrawerIndicatorEnabled()); //returns true
mDrawerLayout.setDrawerListener(mDrawerToggle);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayShowHomeEnabled(false);
}
/**
* When using the ActionBarDrawerToggle, you must call it during
* onPostCreate() and onConfigurationChanged()...
*/
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
mDrawerToggle.syncState();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
mDrawerToggle.onConfigurationChanged(newConfig);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
return super.onOptionsItemSelected(item);
}
XML:
<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" >
<ScrollView
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>
<ExpandableListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#ffffff"
android:dividerHeight="0dp" />
</android.support.v4.widget.DrawerLayout>
J'ai regarder les différents exemples de code en ligne, mais ils sont tous de faire la même chose. Je ne sais pas pourquoi il ne fonctionne pas pour moi.
S'il vous plaît aider.
source d'informationauteur mudit
Vous devez vous connecter pour publier un commentaire.
Vous aurez à utiliser
au lieu de
Acclamations,
Felix
EDIT: Voici comment masquer l'Icône via XML:
ajouter à votre styles.xml: (Remplacer android:Widget.Holo.La lumière.ActionBar.Solide avec android:Widget.Holo.ActionBar.Solide si vous utilisez l'obscurité de la barre d'action)
puis l'ajouter à votre Thème que vous avez défini dans AndroidManifest.xml (la Norme est de la AppBaseTheme /res/values-v11/styles.xml - AppBaseTheme:
Espérons que cette aide!
essayer ce code
Il suffit d'ajouter la ligne suivante à l'intérieur de showGlobalContextActionBar (), méthode (NavigationDrawerFragment.java classe)
Extrait de Code:
Cela a fonctionné pour moi quand j'ai voulu obtenir le menu de l'icône de la flèche de retour