我有一个类来启动一个新活动,我里面有一个创建意图的函数。我需要将 MainActivity.class 变量传递给该函数。 通常我是这样做的。
Intent intent = new Intent(context, MainActivity.class);
我不想有这样的东西:
Intent intent = new Intent(context, variable);
所以我不想改变活动基本上开始。这可能吗?
如果我理解正确,你想使用反射来获取类名。
Class someActivity = Class.forName(getPackageName() + "MainActivity");
Intent intent = new Intent(context, someActivity);
startActivity(intent);
在发布问题之前搜索您的问题,很多人都有与您相同的问题。
我想这就是你要找的
如何将整数从一个活动传递到另一个活动?
现在而不是int使用字符串,我想你要找的是什么
你正在寻找这个。
private void callActivity(Activity activity,Class<?> className)
{
Intent intent = new Intent(activity, className);
startActivity(intent);
}
只需从调用另一个活动的位置传递活动以及需要调用的类名。
private void callActivity(Context context,Class<?> className)
{
Intent intent = new Intent(context, className);
startActivity(intent);
}