GetActionBar () devuelve Null (AppCompat-v7 21)

Mi aplicación se está estrellando el minuto que ejecutarlo después de haber cambiado mi AppCompat-v7 a 21.0.0 y compilado sin ningún problema.

Me da el error:

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setIcon(int)' on a null object reference 

En esta línea:

 getActionBar().setIcon(R.drawable.ic_action_bar); 

Funciona con AppCompat-v7 20.0.0, pero no con 21.0.0.

Necesita llamar a getSupportActionBar() en un ActionBarActivity . No llame a getActionBar() – que no está disponible en dispositivos antiguos, y para la nueva edición r21 de appcompat-v7 , esperaría que devuelva null todo el tiempo, ya que el nuevo ActionBarActivity deshabilita y reemplaza la barra de acción del sistema.

Si su actividad es AppCompatActivity, puede obtener la barra de acción de la siguiente manera:

 android.support.v7.app.ActionBar mActionBar = getSupportActionBar(); 
 Object actionBar = getSupportActionBar(); android.support.v7.internal.app.WindowDecorActionBar bar = (android.support.v7.internal.app.WindowDecorActionBar) actionBar; 

Si está desarrollando la orientación de la aplicación 21SDK, pero la aplicación se va a utilizar en los sdk más antiguos, entonces estas líneas anteriores son la solución.

No puede utilizar getActionBar () bajo 21SDK cuando su actividad amplía ActionBarActivity

Reemplace ActionBar por android.support.v7.app.ActionBar en todo lo que codifica. Y use setSupportActionBar () también Extent su actividad de AppCompatActivity. Utilizar la dependencia de Android v7 de apoyo.

  • ¿Por qué se bloquea mi actividad al pulsar el botón de inicio?
  • Compra en la aplicación de Android NullPointerException
  • NullPointerExeption con AppCompat BottomSheets
  • Intenta invocar el método virtual 'int android.text.Layout.getLineCount ()' en una referencia de objeto nulo
  • Se ha producido un error interno durante: "Lanzamiento del proyecto". Java.lang.NullPointerException
  • NullPointerException en findViewById () en android
  • Android NullPointerException en Instrumentation.execStartActivity
  • No se puede inyectar vista a clases personalizadas con RoboGuice
  • Android NullPointerException al ejecutar la consulta en la base de datos SQLite
  • NullPointerException cuando el acceso a la matriz en la clase
  • NullPointerException en android.widget.AbsListView.contentFits (AbsListView.java:722)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.