1

私は変数を持っています:

String MyClass = "MyClass"

ここで使用したい:

Intent intent = new Intent(this, MyClass.class);
startActivity(intent);

また:

Intent intent = new Intent(this, MyClass.ToString().class);
startActivity(intent);

動作しません... MyClassIntent コンストラクターに値を渡すにはどうすればよいですか?

4

1 に答える 1

4

まず第一に、Java の命名規則は、変数は小文字で始まり、クラスは大文字で始まるというものです。クラスを指定しているように見えますが、そうではないため、これによりコードが混乱します。

実際、正しい答えは、次を使用して String を Class オブジェクトに変更することClass.forName()です。

Class<?> newActivityClass = Class.forName(myPackage + "." + myClass);
startActivity(new Intent (this, newActivityClass));

キャッチして適切に処理する必要がある例外があります。

于 2013-03-28T17:35:35.193 に答える