我想根据前一个 Activity 的输入动态启动一个 Activity 。我通过之前的 Activity 输入了一个字符串,唯一的问题是这个特定的代码抛出错误
无法解析构造函数“Intent(com.MentalMathWorkout.EasyCountDown, java.lang.String)”
有没有办法让它工作?
public class EasyCountDown extends AppCompatActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ecd);
Intent intent = getIntent();
String test = intent.getStringExtra(MainActivity.TEST_TYPE);
String cstring = ".class";
final String activity = test.concat(cstring);
Intent intent = new Intent(EasyCountDown.this, activity);
startActivity(intent); //Start test
}
最佳答案
ComponentName 对象就是这样做的:
String activity = intent.getStringExtra(MainActivity.TEST_TYPE);
Intent intent = new Intent(this, new ComponentName(this, activity));
startActivity(intent);
假设 this
是 Activity
的一个实例。 (对于 Fragment
,使用 getActivity()
,obv。)
关于Android:动态启动一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37060519/