Android项目实战(六十六):ActivityResultContract

2023-10-14 19:28:22 浏览数 (1)

startActivityForResult,onActivityResult 的进阶写法

定义一个自定义ActivityResultContract

代码语言:javascript复制
public class CommonIntentContract extends ActivityResultContract<Intent, Intent> {
    @NonNull
    @Override
    public Intent createIntent(@NonNull Context context, Intent input) {
        return input;
    }

    @Override
    public Intent parseResult(int resultCode, @Nullable Intent intent) {
        return intent;
    }
}

使用

代码语言:javascript复制
// 开启下一页 传入Intent
launcher.launch(new Intent(this, MActivity.class)
        .putExtra(StaticGather.DATA, "abc"));

传入参数和回调参数皆可自定义类

0 人点赞