【Android】画面遷移とインテント
スポンサーリンク
Androidアプリの画面遷移方法。
インテントの種類
以下、サンプルです。
初期画面(FirstActivity)と遷移後の画面(SecondActivity)を用意し、初期画面にはボタン(button)を配置しています。
そして、ボタンを押すと画面遷移します。
基本的な手順は同じでExplicitかImplicitの違いは自分で用意した画面に遷移するか、指定した処理に対する画面(アプリ)をOSに選択させるかのようです。
Explicit Intents
package dederin.explicitintents; import android.content.DialogInterface; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class FirstActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_first); setContentView(R.layout.activity_first); Button button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v){ // 明示的なインテント Intent intent = new Intent(FirstActivity.this, SecondActivity.class); startActivity(intent); } }); } }
Implicit Intents
package dederin.implicitintents; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.net.Uri; public class FirstActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_first); Button button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v){ Uri uri = Uri.parse("http://www.google.co.jp"); // 暗黙的なインテント // Android OSがURIを開くためのブラウザアプリを自動選択する Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); } }); } }