ARouter简易ARouter+手动组件化跳转Module应用总结
程序员文章站
2022-03-03 20:07:25
ARouter应用一、添加依赖和配置(将所有要用的Module中的build.gradle里面添加)//添加在build.gradle中->android->defaultConfig 下javaCompileOptions { annotationProcessorOptions { arguments = [AROUTER_MODULE_NAME: project.getName()] }...
ARouter应用
一、添加依赖和配置(将所有要用的Module中的build.gradle里面添加)
//添加在build.gradle中->android->defaultConfig 下
javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME: project.getName()]
}
}
//以下是需要导入的依赖
implementation ('com.alibaba:arouter-api:1.4.1')
annotationProcessor 'com.alibaba:arouter-compiler:1.2.2'
二、在一个最初的(第一个运行的Module)Module继承自applaction中并初始化ARouter
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
//打印日志
ARouter.openLog();
//开启调试模式
ARouter.openDebug();
//初始化
ARouter.init(this);
}
}
三、添加注解
添加注解
在支持路由的页面上添加注解
1.这里的路径需要注意的是至少需要有两级,/xx/xx一般是本类名+上一级文件夹名
//设置注解路径
@Route(path="/mafengwo/MainActivity")
public class MainActivity extends AppCompatActivity {
2.需要注册、(在设置路径的地方本Activity中)
ARouter.getInstance().inject(this);
3.在需要跳转的地方写入
//设置点击事件
text1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//再导入依赖和配置后使用
//build中写入跳转的路径
ARouter.getInstance().build("/myhome/MyHomeMainActivity")
//传值
.withString("name","田老师")
.navigation();
}
});
4.接受跳转的值
//注解获取获取值
@Autowired(name="name")
//必须public 接收name
public String name;
//2.通过Autowired注解 & 将key1作为属性的名称 & 需要在onCreate中调用ARouter.getInstance().inject(this);配合使用
TextView text1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home_activity_main);
//注册
ARouter.getInstance().inject(this);
//初始化控件
text1=findViewById(R.id.home_text1);
//设置textView
text1.setText(name);
}
本文地址:https://blog.csdn.net/qq_45394277/article/details/107958017
上一篇: 探讨