明示的インテント(Explicit Intents)は、アクティビティなどのコンポーネントを明示的に指定して利用する方法です。通常、同一アプリケーション内のアクティビティ間で利用されます。
明示的インテントは、以下のように呼び出します。
Intent intent = new Intent(this, HogeActivity.class); startActivity(intent);
実際の例を見てみましょう。
MainActivity画面のボタンを押すことで、NextActivity画面が呼び出しています。
●MainActivity画面
package com.example.youfit.hogeapplication; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends Activity implements View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // クリックイベントを取得したいボタン Button btnSend =(Button)this.findViewById(R.id.button); btnSend.setOnClickListener(this); } @Override // クリック時に呼ばれるメソッド public void onClick(View v) { // NextActivityを呼び出す Intent intent = new Intent(this, NextActivity.class); startActivity(intent); } }
26、27行で明示的インテントを使用しています。
●NextActivity画面
package com.example.youfit.hogeapplication; import android.app.Activity; import android.os.Bundle; public class NextActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_next); } }