IntentとActivity (4/6)
作成:2010-05-17 16:30
更新:2011-01-16 14:24
更新:2011-01-16 14:24
■SampleApp.javaの修正
続いて、SampleApp.javaを修正します。今回は、テキストを入力するEditTextを用意していますので、ここからテキストを取り出してIntentに設定し、起動する処理を用意します。
MyClickAdapterクラスのonClickメソッドで、ボタンクリック時の処理をしています。edit.getTextで入力されたテキストを取り出した後、Intentを作成します。
MyClickAdapterクラスのonClickメソッドで、ボタンクリック時の処理をしています。edit.getTextで入力されたテキストを取り出した後、Intentを作成します。
Intent intent = new Intent(getApplicationContext(),第1引数は、getApplicationContextメソッドを使ってアプリケーションのContextを取得し指定します。第2引数は、jp.tuyano.SampleActivity.classを指定します。この「SampleActivity」というのが、起動するActivityクラス(この後に作成します)です。このように「クラスの指定.class」と指定して、起動するクラスのClassインスタンスを引数に指定します。
jp.tuyano.SampleActivity.class);
intent.putExtra("data", str.toString());続いて、先ほどEditTextから取り出したテキストをIntentに設定します。「putExtra」メソッドを使うことで、Intentにデータを設定しておくことができます。これは第1引数に値の名前を、第2引数に受け渡すデータの値をそれぞれ指定して呼び出します。ここでは、"data"という名前でテキストを設定したわけです。
startActivity(intent);最後に、startActivityでActivityを起動すれば作業は完了です。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
package jp.tuyano; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.text.Editable; import android.view.View; import android.view.View.OnClickListener; import android.widget.*; public class SampleApp extends Activity { private EditText edit; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); edit = (EditText)this.findViewById(R.id.edit); Button button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new MyClickAdapter()); } class MyClickAdapter implements OnClickListener { @Override public void onClick(View v) { Editable str = edit.getText(); Intent intent = new Intent( getApplicationContext(), jp.tuyano.SampleActivity.class); intent.putExtra("data", str.toString()); startActivity(intent); } } }
※関連コンテンツ