自考在线做试卷的网站/杭州网站优化公司
前言
如何快速使用第三方模块,而不是在基础配置上化太多时间。本文将继续接着(一),谈谈arouter的传参,以及返回传参问题。
上次回顾Android Kotlin/java集成arouter产生的问题及解决
1.正向传参
主要还是对Intent进行了二次封装
1.简单传值:
ARouter.getInstance().build("/start/MainActivity").withString("type", "U").withInt("value", 20).navigation();
获取值:
@Route(path = "/start/MainActivity")public class ClickButtonActivity extends BaseActivity {@Autowired(name = "type")public String type;@Autowired(name = "value")public int value;}}
2.埋点设置跳转,多了一个监听
ARouter.getInstance().build("/begin/MainActivity").withString("type", "U").withInt("value", 20).navigation(getActivity(), new NavigationCallback() {@Overridepublic void onFound(Postcard postcard) {Log.e("TAG", "onFound");}@Overridepublic void onLost(Postcard postcard) {Log.e("TAG", "onLost");}@Overridepublic void onArrival(Postcard postcard) {Log.e("TAG", "onArrival");}@Overridepublic void onInterrupt(Postcard postcard) {Log.e("TAG", "onInterrupt");}});
获取值与(1)相同, NavigationCallback就是跳转的监听的回调,跳转成功、失败、完成、被拦截四个监听回调,这在个回调里面可以进行埋点设置、其他跳转、验证登录等。
2.返回获取值
带RequestCode跳转,在navigation方法的第二个参数添加即可:
ARouter.getInstance().build("/start/activity2").navigation(this, 10001);