2 つの編集テキストに入力された値を取得し、送信ボタンがクリックされたときにそれらを別のクラスにインテントとして送信するインテントを作成しました。コードは次のとおりです。
Button bSubmit1 = (Button) findViewById(R.id.submit2); //Submit Button
bSubmit1.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
// TODO Auto-generated method stub
String entry_Minutes = entryminutes.getText().toString();
String entry_Hours = entryhours.getText().toString();
Intent i=new Intent("com.lukeorpin.theappliancekeeper.MOVINGSTRINGS");
i.putExtra("Entry_Minutes", entry_Minutes);
i.putExtra("Entry_Hours", entry_Hours);
startActivity(i);
次に、インテントで送信された文字列が別の 2 つの編集テキストに表示されるはずの場所で、次のクラスのアクティビティが開始されますが、2 つの編集テキスト ボックスには何も表示されません。他のクラスのコードの他の部分は次のとおりです。
public class EntryStatistics extends Activity {
EditText hoursBox, minutesBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.entrystatistics);
hoursBox = (EditText)findViewById(R.id.entry_hours);
minutesBox = (EditText)findViewById(R.id.entry_minutes);
String entry_minutes = getIntent().getStringExtra("Entry_Minutes");
if(entry_minutes!=null){
return;
}
String entry_hours = getIntent().getStringExtra("Entry_Hours");
if(entry_hours!=null){
return;
}
hoursBox.setText(entry_hours);
minutesBox.setText(entry_minutes);
文字列の値が編集テキストに表示されない理由を誰か教えてもらえますか? 何も表示されません。ありがとう
完全なエラー メッセージは次のとおりです。
04-14 03:00:47.300: E/AndroidRuntime(373): FATAL EXCEPTION: main
04-14 03:00:47.300: E/AndroidRuntime(373): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lukeorpin.theappliancekeeper/com.lukeorpin.theappliancekeeper.EntryStatistics}: java.lang.NullPointerException
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.os.Handler.dispatchMessage(Handler.java:99)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.os.Looper.loop(Looper.java:123)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread.main(ActivityThread.java:3683)
04-14 03:00:47.300: E/AndroidRuntime(373): at java.lang.reflect.Method.invokeNative(Native Method)
04-14 03:00:47.300: E/AndroidRuntime(373): at java.lang.reflect.Method.invoke(Method.java:507)
04-14 03:00:47.300: E/AndroidRuntime(373): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-14 03:00:47.300: E/AndroidRuntime(373): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-14 03:00:47.300: E/AndroidRuntime(373): at dalvik.system.NativeStart.main(Native Method)
04-14 03:00:47.300: E/AndroidRuntime(373): Caused by: java.lang.NullPointerException
04-14 03:00:47.300: E/AndroidRuntime(373): at com.lukeorpin.theappliancekeeper.EntryStatistics.onCreate(EntryStatistics.java:34)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-14 03:00:47.300: E/AndroidRuntime(373): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
04-14 03:00:47.300: E/AndroidRuntime(373): ... 11 more
34 行目と 35 行目は次のとおりです。
hoursBox.setText(entry_hours);
minutesBox.setText(entry_minutes);