2010-11-30 7 views
0

私のプロジェクトでは2つのアクティビティやクラスがあります。最初のアクティビティでは、私はEditTextを持っていて、2番目のクラスからそれのテキストを取得したいと思います。Android:EditTextのgetTextメソッドの問題

最初のクラスではこのコードを書いていますが、問題があるようです。

public String getTextMessage() 
{ 
    return textMessage.getText().toString(); 
} 

2番目のクラスで取得したいときにプログラムがクラッシュするためです。

message = encode.getTextMessage(); 

あなたの提案は何ですか?

+0

logcatを送信してください。また、 'encode'を初期化しましたか? – EboMike

+0

はい、それは 'textMessage'クラス変数ですか? – kcoppock

+0

おそらくtextMessage = nullですか?一番上にfindViewByIdをしましたか?あなたは正しいIDをくれましたか?はい、logcatコードの行以上をしてください。他のクラスがどこにあるかのように... –

答えて

1

テキストを編集してgetText()でテキストにアクセスし、文字列に格納します。 2番目のアクティビティに移動すると、バンドルを介して2番目のクラスに文字列変数が送信されました。バンドルを2番目のクラスに抽出して使用します。

+0

これはおそらく彼が行く必要がある方法ですが、情報が不足しているため、彼が何をしたいのかが分かりません:D –

+0

あなたのコードとlogcat情報 –

1

あなたは、まずedittextboxから文字列を取得する必要がありますと意思を通じて他の第2の活動に送信スニルが語るとおりの意図

2

から値を渡す必要があります。 2番目のアクティビティの開始後、バンドルからテキストを取得する必要があります。スニペットは以下のとおりである コード...

活動

  Intent i = new Intent(this, Second.class); 
      i.putExtra("EXTRATEXT", editText.gettext().toString()); 
      startActivity(i); 

アクティビティB

Class Second extends Activity{ 
@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     String text = getIntent().getExtras().getString("EXTRATEXT"); 
    }