2015-03-18 5 views
0

У меня есть два класса, первый из них внутри onclick у меня;Как использовать put и получить дополнительные в намерениях

Intent myIntent = new Intent(getApplicationContext(), PlayGame.class); 
     myIntent.putExtra("gameWord", Word.getRandomWord().toUpperCase()); 
     startActivity(myIntent); 
     finish(); 

then in the get-class onCreate i have;

Bundle extras = getIntent().getExtras(); 

    String secretWord = extras.getString("gameWord"); 

, когда я пытаюсь и запустить андроид приложения я получаю сообщение об ошибке на «startActivity (myIntent);». Есть идеи?

вот мой logCat;

Shutting down VM 
FATAL EXCEPTION: main 
Process: com.example.hunglikeanandroid, PID: 3431 
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.hunglikeanandroid/com.example.hunglikeanandroid.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) 
at android.app.ActivityThread.access$800(ActivityThread.java:144) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5221) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference 
at com.example.hunglikeanandroid.MainActivity.<init>(MainActivity.java:35) 
at java.lang.reflect.Constructor.newInstance(Native Method) 
at java.lang.Class.newInstance(Class.java:1572) 
at android.app.Instrumentation.newActivity(Instrumentation.java:1065) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2199) 
+1

Можете ли вы разместить свой логарифм? –

+0

Я изменил getApplicationContext() на TitleScreen.this, но до сих пор нет радости. – NWall

ответ

2

Вместо использования getApplicationContext() использовать MainActivity.this, текущая деятельность

Intent myIntent = new Intent(MainActivity.this, PlayGame.class); 
myIntent.putExtra("gameWord", Word.getRandomWord().toUpperCase()); 
startActivity(myIntent); 
1

ApplicationContext отличается от деятельности Context.You должны использовать получить getActivity() вместо getApplicationContext.

 Смежные вопросы

  • Нет связанных вопросов^_^