Android API level 16 で追加されたメソッドその2

Android API level 16 で追加されたメソッドその2

public void startIntentSenderForResult(IntentSender intent, int requestCode, Intent fillInintent, int flagsMask, int flagsValues , int extraFlags, Bundle options)
startActivityForResult(Intent,int)に似てるけど
起動するActivityを記述するために
IntentSenderを使うことができる

IntentSenderがActivityのためなら
startActivityForResult(Intent,int)の呼び出しのように
そのActivityが開始される

それ以外なら
IntentSender.sendIntentを呼び出すように関連付けられたアクション
例えばBroadcastなどが実行される

IntentSender.SendIntentExceptionがスローされる

引数のintentは、起動するためのIntentSender

requestCodeは、0以上ならActivityが終了する際に
startActivityForResult(Intent,int)で説明されている
onActivityResult()内で返される値

fillInIntentは、nullでないなら、Intentのparameterとして
sendIntent(Context,int,Intent,IntentSender.OnFinished,Handler)
に提供される

flagsMaskは、変更したいオリジナルのIntentSenderにあるIntentFlag

flagsValuesは
flagsMaskに設定されている任意のビットの変更したい値

extraFlagsは、常に0

optionsは、どのようにActivityを開始するべきかを示す追加オプション
もし、オプションもIntentSenderにより与えられている場合、上書きされる

public void startIntentSenderFromChild(Activity child, IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)
startActivityFromChild(Activity,Intent,int,)に似てるけど
こっちは、IntentSenderを取り入れている
IntentSender.SendIntentExceptionをスローする

public boolean startNextMatchingActivity(Intent intent, Bundle options)
他のActivityのコンポーネント置き換えて使うときに、Activityを開始する特別なバージョン

Intentを扱う次のActivityへIntentを手渡すのに使う
通常は、getIntent()で返されるIntentを使い
onCreate(Bundle)の中でこのメソッドを呼び出す

引数のintentは、次のActivityにdispatchするIntent
正しい動作のために、Activityを開始したIntentと同じであること
変更は、そのなかのExtraにある

optionsは、どのようにActivityが開始されるかを示す追加オプション

戻り値は、開始するためのActivityがあるかどうかを示すプール値
開始するための次のActivityがあればtrue
なければfalse

trueなら、その後finish()を呼び出す必要がある

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です