Android学習ノートは表示と暗黙的なIntentジャンプインタフェースで
2961 ワード
一般表示Intentの使い方
暗黙的なIntentの使い方
ラベルの下に設定した内容で、現在のアクティビティに応答できるactionを指定できます. とcategoryは、AndroidManifest.xmlを開き、次のコードを追加します.
その前に注意しなければならないのは の内容と同时に Intentで指定したactionとcategoryを合わせると、このアクティビティがIntentに響くはずです.そしてMainActivityでジャンプしたときに次のように書きます.
各Intentでは1つのactionしか指定できませんが、複数のcategoryを指定できます.現在のIntentでは デフォルトのcategoryですが、今からもう一つ追加しましょう.
暗黙的なIntentを使用すると、自分のプログラム内のアクティビティだけでなく、他のプログラムのアクティビティも起動でき、Androidの複数のアプリケーション間の機能共有が可能になります.例えばあなたのアプリケーションでは Webページは、ブラウザを自分で実装する必要はありません(実際には不可能です)、呼び出すだけです.
システムのブラウザでこのページを開くといいです.FirstActivityのボタンクリックイベントのコードを以下のように変更します.
Intentを指定したactionはIntent.ACTION_VIEW、Androidシステムに内蔵された動作で、その定数値はandroid.intent.action.VIEWです.その後、Uri.parse()メソッドを使用して、ウェブサイトの文字を 文字列はUriオブジェクトに解析され、IntentのsetData()メソッドを呼び出してこのUriオブジェクトを渡します. プログラムを再実行し、FirstActivityインタフェースでボタンをクリックすると、システムブラウザが開きます.
1. android:scheme 上記の例のhttpセクションなど、データを指定するためのプロトコルセクション. 2. android:host 上記の例のwww.baidu.comセクションなど、データを指定するホスト名セクション. 3. android:port データを指定するポート部分は、一般的にホスト名の後に続く. 4. android:path ドメイン名の後にあるWebサイトなど、ホスト名とポートの後にある部分を指定します. 5. android:mimeType
Intent intent = new Intent();
intent.setClass(MainActivity.this, activity2.class);
startActivity(intent);
暗黙的なIntentの使い方
ラベルの下に設定した内容で、現在のアクティビティに応答できるactionを指定できます. とcategoryは、AndroidManifest.xmlを開き、次のコードを追加します.
その前に注意しなければならないのは の内容と同时に Intentで指定したactionとcategoryを合わせると、このアクティビティがIntentに響くはずです.そしてMainActivityでジャンプしたときに次のように書きます.
Intent intent = new Intent("com.example.activitytest.ACTION_START");
startActivity(intent);
android.intent.category.DEFAULTはデフォルトのcategoryで、呼び出し startActivity()メソッドの場合、自動的にこのcategoryがIntentに追加されます.各Intentでは1つのactionしか指定できませんが、複数のcategoryを指定できます.現在のIntentでは デフォルトのcategoryですが、今からもう一つ追加しましょう.
Intent intent= new Intent("com.example.activitytest.ACTION_START");
intent.addCategory("com.example.activitytest.MY_CATEGORY");
startActivity(intent);
categoryを指定する前に、AndroidManifest.xmlに次のコードを追加する必要があります.そうしないと、実行時にエラーが発生します.
より多くの暗黙的なIntentの使い方 暗黙的なIntentを使用すると、自分のプログラム内のアクティビティだけでなく、他のプログラムのアクティビティも起動でき、Androidの複数のアプリケーション間の機能共有が可能になります.例えばあなたのアプリケーションでは Webページは、ブラウザを自分で実装する必要はありません(実際には不可能です)、呼び出すだけです.
システムのブラウザでこのページを開くといいです.FirstActivityのボタンクリックイベントのコードを以下のように変更します.
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.baidu.com"));
startActivity(intent);
}
});
Intentを指定したactionはIntent.ACTION_VIEW、Androidシステムに内蔵された動作で、その定数値はandroid.intent.action.VIEWです.その後、Uri.parse()メソッドを使用して、ウェブサイトの文字を 文字列はUriオブジェクトに解析され、IntentのsetData()メソッドを呼び出してこのUriオブジェクトを渡します. プログラムを再実行し、FirstActivityインタフェースでボタンをクリックすると、システムブラウザが開きます.
1. android:scheme 上記の例のhttpセクションなど、データを指定するためのプロトコルセクション. 2. android:host 上記の例のwww.baidu.comセクションなど、データを指定するホスト名セクション. 3. android:port データを指定するポート部分は、一般的にホスト名の後に続く. 4. android:path ドメイン名の後にあるWebサイトなど、ホスト名とポートの後にある部分を指定します. 5. android:mimeType