ARouter
2021-09-03 本文已影响0人
闫鹏飞写字的地方
添加依赖:
javaCompileOptions {
annotationProcessorOptions {
arguments = [moduleName :project.getName() ]
}
}
implementation'com.alibaba:arouter-api:1.3.1'
annotationProcessor'com.alibaba:arouter-compiler:1.1.4'
初始化
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
ARouter.init(this);
}
}
使用:
目标页面
@Route(path = "/app/AxActivity")
public class AxActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ax);
}
}
要跳转的地方:
tvJump.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ARouter.getInstance().build("/app/AxActivity").navigation();
}
});
带参数跳转
要跳转的地方:
tvJump.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ARouter.getInstance()
.build("/app/AxActivity")
.withInt("age", 23)
.withString("name", "Tony")
.navigation();
}
});
目标页面
@Route(path = "/app/AxActivity")
public class AxActivity extends AppCompatActivity {
private String TAG = "AxActivity";
@Autowired()
public int age;
@Autowired(name = "name")
public String name;
@Autowired
public MainActivity.Person person;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ax);
Log.i(TAG, "age:"+age+",name:"+name);
}
}
界面跳转动画
ARouter.getInstance()
.build("/app/AxActivity")
.withTransition()
.navigation();
使用URI进行跳转
