从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 传送门

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值