java - 如何创建启动活动的方法?
问题描述
我有一个开关盒,可以根据用户选择启动不同的活动。我不想继续重复创建这样的意图的代码:
switch(choice) {
case "option1":
Intent intent = new Intent(context, MyActivity1.class);
case "option2":
Intent intent = new Intent(context, MyActivit2.class);
}
我想创建一个函数,我可以在其中传递上下文和我的活动,例如:
private void startMyActivity(Context ctx, Type what_do_I_pass_here) {
Intent intent = new Intent(context, Type.class);
startActivity(intent);
}
我试过了
private void startMyActivity(Context ctx,Class<Activity> cls)
但它不工作
解决方案
试试这个代码:
public void startSpecificActivity(Class<?> otherActivityClass) {
Intent intent = new Intent(getApplicationContext(), otherActivityClass);
startActivity(intent);
}
用法:
startSpecificActivity(MyActivity1.class);
推荐阅读
- wordpress - 带有 RangeControl 的 WordPress Gutenberg 块模板列
- javascript - How to parse string of objects into javascript object?
- zenject - 如何在 Unity 内外使用 zenject,但使用不同的 DiContainer?
- python - 使用 python3 subprocess.run() 未检测到 Asciidoctor-pdf 属性
- maven - Jenkins - 使用 clean 命令清理项目时出现异常
- css - 为什么 Chrome 检查器中的 CSS 规则显示为灰色
- c# - 绑定属性 FromForm .NET Core Web API
- mysql - 为什么我的网站关闭并给出“致命错误:未捕获的错误:找不到类 'PDO'”,即使我最近没有进行任何更改?
- xelatex - 章、节、小节标题的字体更改
- windows - Windows Docker 容器 MSMQ 出队消息永远不会到达目的地