将字符串转换为类

2023-11-21

我试图根据一些用户输入在一个活动之间移动到另一个活动。

我正在尝试使用:

String myClass = "some_user_input.class"
Intent myIntent = new Intent(getApplicationContext(), myClass);
startActivity(myIntent);

...从一项活动转移到另一项活动。

我可以这样做,我可以直接在硬代码中引用我的新活动,并且不要尝试从文本(即 classA.class)编译它,但是我希望能够通过向其传递一些编译的字符串来构建我的意图由用户。

例如,如果用户在编辑文本中输入 B,我想要转到classB.class如果用户输入Z,我想去classZ.class.

有什么方法可以使用字符串编译我想要的类,然后将其转换为类吗?

提前致谢!


反射机制允许你这样做:

String myClass = "some_user_input";
Class<?> clazz = Class.forName(myClass);
Intent myIntent = new Intent(getApplicationContext(), clazz);

请注意,这些类应包含在 Android 清单 XML 中。

另请注意,我没有处理此示例中的异常:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将字符串转换为类 的相关文章

随机推荐