Activityからジャンプして


Activityからジャンプして


Activity間のジャンプは、私たちは一般的にこのように書きます.
startActivity(new Intent(MainActivity.this, SecondActivity.class));

パラメータが必要なら
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("extra", "Hello World");
startActivity(intent);

私たちは少し簡略化できますか?例えば、このように
PIntent.from(MainActivity.this).to(SecondActivity.class);

付属パラメータ
PIntent.from(MainActivity.this)
        .with("extra", "Hello World")
        .to(SecondActivity.class);

これはもっと分かりやすく、Intentの役割を理解しやすいのではないでしょうか.
他の話をしましょう.BActivityをジャンプしようとしたとき、BActivityにはどんなパラメータが必要なのか、私たちは知りませんでした.BActivityを開いて、必要なパラメータを確認しますか?これはあまりにも友好的ではない.このようにBActivityでstaticメソッドを提供して、それ自体を開くことができます.
public static void open(Context context, String id) {
    PIntent.from(context)
            .with("id", id)
            .to(BActivity.class);
}

BActivityを開く必要があるときに直接呼び出すことができます
BActivity.open(MainActivity.this, id)

これにより,ドッキングの認知難易度が低下した.これは最適なソリューションではないかもしれませんが、構成よりも規則的です.
Demoトランスポートゲート