2013-04-18 3 views
-2

То, что я пытаюсь достичь, - это когда я нажимаю кнопку изображения, она добавляет 1 к int, а затем, когда я перехожу на страницу статистики, она отображает этот int в текстовом виде, но когда i нажмите на кнопку статистики, с которой падает приложение.Android, получающий Int от другой активности


цвет класс

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_color); 

    blue = (ImageButton)findViewById(R.id.imageButton1); 


    blue.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 

      tb1.setText("BLUE"); 
      bl1++; 


     } 
    }); 

    home.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 

      Intent intent = new Intent(v.getContext(), MainActivity.class); 

      intent.putExtra("blue1", bl1); 

      startActivityForResult(intent, 0); 


     } 
    }); 

Статистика класса

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_stats); 

    theblue = (TextView)findViewById(R.id.textView1); 
    theblue.setText(getIntent().getExtras().getInt("blue1")); 


} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.stats, menu); 
    return true; 
} 

} 

04-18 05:30:12.645: W/dalvikvm(790): threadid=1: thread exiting with uncaught exception (group=0x40a71930) 
04-18 05:30:12.685: E/AndroidRuntime(790): FATAL EXCEPTION: main 
04-18 05:30:12.685: E/AndroidRuntime(790): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.childapp/com.example.childapp.Stats}: java.lang.NullPointerException 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread.access$600(ActivityThread.java:141) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.os.Handler.dispatchMessage(Handler.java:99) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.os.Looper.loop(Looper.java:137) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread.main(ActivityThread.java:5041) 
04-18 05:30:12.685: E/AndroidRuntime(790): at java.lang.reflect.Method.invokeNative(Native Method) 
04-18 05:30:12.685: E/AndroidRuntime(790): at java.lang.reflect.Method.invoke(Method.java:511) 
04-18 05:30:12.685: E/AndroidRuntime(790): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
04-18 05:30:12.685: E/AndroidRuntime(790): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
04-18 05:30:12.685: E/AndroidRuntime(790): at dalvik.system.NativeStart.main(Native Method) 
04-18 05:30:12.685: E/AndroidRuntime(790): Caused by: java.lang.NullPointerException 
04-18 05:30:12.685: E/AndroidRuntime(790): at com.example.childapp.Stats.onCreate(Stats.java:19) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.Activity.performCreate(Activity.java:5104) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 
04-18 05:30:12.685: E/AndroidRuntime(790): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144) 
04-18 05:30:12.685: E/AndroidRuntime(790): ... 11 more 
+0

Как это крах? Укажите логарифм. – zmbq

+0

какая кнопка u r talk abt? быть конкретным и показывать нам logcat, мы не можем читать весь ваш код, –

+0

- это полезно? – steven

ответ

0
  1. Сначала положите журнал, чтобы проверить, передается ли значение в намерении или нет.
    Если это удастся:
  2. Затем используйте этот код для получения значения.

    theblue.setText(""+getIntent().getExtras().getInt("blue1"));