使用变量启动Activity

时间:2014-12-06 21:17:13

标签: android android-activity

如何使用字符串来表示活动变量的名称?

 Intent in = new Intent(MainActivity.this,
                         xxx.class);

如果我的字符串是“a”,它将是:

Intent in = new Intent(MainActivity.this,
                             a.class);

否则,如果我的字符串是“b”:

Intent in = new Intent(MainActivity.this,
                             b.class);

我该如何连接这个?非常感谢你

2 个答案:

答案 0 :(得分:2)

  

如何连接这个?

理想情况下,你不是。您使用其他内容,例如switch语句或HashMap<String,Class>查找或其他内容。

话虽如此,如果你真的想要,欢迎你use Class.forName()

答案 1 :(得分:1)

我现在无法检查,但这应该有效:

Intent I = new Intent(this, Class.forName("your.package.ClassName"));

然而,这是一个有点危险的恕我直言。这将允许从您的应用程序外部启动任何活动。这将是例如允许从外部打开一些未导出的内部活动。