Сбои приложения на платформе сэндвича с мороженым - PullRequest
0 голосов
/ 16 февраля 2012

Я работал над приложением, которое отлично работает на 2.x версиях android, но падает на 4.x, то есть на Ice Cream Sandwich Platform.Ведение журнала показывает некоторые странные результаты, которые я не могу понять.Может быть, любой из вас может помочь.В журнале я получаю следующее исключение:

02-16 11:18:43.518: E/AndroidRuntime(869): FATALEXCEPTION: main
02-16 11:18:43.518: E/AndroidRuntime(869): java.lang.RuntimeException: Unable to start activityComponentInfo{com.my.project.activities/com.my.project.controllers.MainController}: java.lang.NullPointerException
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1955)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1980)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread.access$600(ActivityThread.java:122)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1146)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.os.Handler.dispatchMessage(Handler.java:99)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.os.Looper.loop(Looper.java:137)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread.main(ActivityThread.java:4340)
02-16 11:18:43.518: E/AndroidRuntime(869): at java.lang.reflect.Method.invokeNative(Native Method)
02-16 11:18:43.518: E/AndroidRuntime(869): at java.lang.reflect.Method.invoke(Method.java:511)
02-16 11:18:43.518: E/AndroidRuntime(869): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
02-16 11:18:43.518: E/AndroidRuntime(869): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
02-16 11:18:43.518: E/AndroidRuntime(869): at dalvik.system.NativeStart.main(Native Method)
02-16 11:18:43.518: E/AndroidRuntime(869): Caused by: java.lang.NullPointerException
02-16 11:18:43.518: E/AndroidRuntime(869): at com.my.project.controllers.MainController.onCreate(MainController.java:184)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.Activity.performCreate(Activity.java:4465)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
02-16 11:18:43.518: E/AndroidRuntime(869): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1919)
02-16 11:18:43.518: E/AndroidRuntime(869):  ... 11 more

Когда я нажимаю на него, я перехожу к строке, где я устанавливаю прослушиватель щелчков на кнопке ImageButton.Я перекрестно проверил, мой ImageButton не является нулевым, скорее все другие кнопки устанавливаются соответственно, кроме одной.

В коде кнопки XML:следующий код, где я использую эту кнопку ImageButton вместе с другими кнопками:

ImageButton btn_settings = (ImageButton) findViewById(R.id.tab_settings);
btn_settings.setOnClickListener(this);

Я не знаю, почему происходит NPE, Любая помощь, любые идеи, чтобы избежать ее, очень ценятся.Обратите внимание, что тот же код, который я упомянул, работает на ВСЕХ версиях 2.X, но на ICS возникают вышеупомянутые ошибки.Спасибо заранее, если вы можете вытащить меня из этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...