2015-03-30 10 views
7

Continuo a ricevere l'errore dicendo che ActionBarDrawerToggle non può essere applicato a v7.widget.Toolbar e perché ho visto come altri hanno risolto un problema simile ora sono entrambi libreria di supporto file ma l'errore non scompare per qualche motivo.ActionBarDrawerToggle non può essere applicato a Android.support.v7.widget.Toolbar

L'errore dice ActionBarDrawerToggle() in ActionBarDrawerToggle non può essere applicato a android.support.v7.widget.Toolbar poi sotto argomento effettivo R.id.drawable_ic_drawer (int)

import android.support.v7.app.ActionBarDrawerToggle; 
 
import android.support.v4.view.GravityCompat; 
 
import android.support.v4.widget.DrawerLayout; 
 
import android.content.SharedPreferences; 
 
import android.content.res.Configuration; 
 
import android.os.Bundle; 
 
import android.preference.PreferenceManager; 
 
import android.view.LayoutInflater; 
 
import android.view.Menu; 
 
import android.view.MenuInflater; 
 
import android.view.MenuItem; 
 
import android.view.View; 
 
import android.view.ViewGroup; 
 
import android.widget.AdapterView; 
 
import android.widget.ArrayAdapter; 
 
import android.widget.ListView; 
 
import android.widget.Toast; 
 
import android.support.v7.widget.Toolbar;

mDrawerToggle = new android.support.v7.app.ActionBarDrawerToggle(
 
       getActivity(),     /* host Activity */ 
 
       mDrawerLayout,     /* DrawerLayout object */ 
 
       R.drawable.ic_drawer,    /* nav drawer image to replace 'Up' caret */ 
 
       R.string.navigation_drawer_open, /* "open drawer" description for accessibility */ 
 
       R.string.navigation_drawer_close /* "close drawer" description for accessibility */ 
 
     ) {

La parte che si dice fare l'errore è R.drawer.ic_drawer. Come lo risolvo?

+0

È necessario passare 'toolbar' invece di' R.drawable.ic_drawer' in costruttore. @Vimbainashe – Pooja

risposta

9

ActionBarDrawerToggle Il costruttore è il seguente.

android.support.v7.app.ActionBarDrawerToggle.ActionBarDrawerToggle(Activity activity, 
DrawerLayout drawerLayout, 
Toolbar toolbar, 
int openDrawerContentDescRes, 
int closeDrawerContentDescRes) 

si passa R.drawable.ic_drawer drawable invece di barra degli strumenti è per questo che hai trovato questo errore.

Creare una barra degli strumenti e aggiungerla come barra delle azioni e passare questa barra degli strumenti a questo costruttore.

+0

Grazie mille. La tua risposta è stata molto istruttiva e utile !! :). @ Pooja –

+1

Ma [qui] (https://developer.android.com/training/implementing-navigation/nav-drawer.html#OpenClose) sulla pagina degli sviluppatori ufficiali, stanno usando 'R.drawable.ic_drawer 'invece di' toobar' – eMAD

+2

@eMAD Il collegamento che hai indicato utilizza 'ActionBarDrawerToggle' v4. Puoi trovarlo qui https://developer.android.com/reference/android/support/v4/app/ActionBarDrawerToggle.html. Ed è deprecato. La mia risposta è secondo 'ActionBarDrawerToggle' v7. Puoi trovarlo qui https://developer.android.com/reference/android/support/v7/app/ActionBarDrawerToggle.html – Pooja

Problemi correlati