gpt4 book ai didi

java - 将 String 转换为 Activity 类

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:41:43 26 4
gpt4 key购买 nike

我正在尝试从一个字符串创建一个 Activity 类并将它传递给一个静态方法。我在 SO 上找到了将字符串传递给类的方法。 FirstActivity 已创建。

第二个 Activity

String myClass = "com.package.FirstActivity";
Class<?> myClass = Class.forName(myClass);
//this works
//Intent myIntent = new Intent(getApplicationContext(), myClass);
//I want to pass to a static method, but it gives a error. Class cannot cast to Activity
StaticMethod.processThis(myClass , "test");

静态方法

public static void processThis(Activity contextActivity, String str) {
//do processing
}

如何让 processThis 工作?如果我没理解错的话,一个Activity也是一个类?

最佳答案

您需要创建一个新的 FirstActivity 实例。如果此类具有不带参数的构造函数,您可以执行以下操作:

String myClass = "com.package.FirstActivity";
Class<?> myClass = Class.forName(myClass);
Activity obj = (Activity) myClass.newInstance();
Intent myIntent = new Intent(getApplicationContext(), myClass); //Maybe here also obj must be needed

//Noe pass your object here
StaticMethod.processThis(obj, "test");

关于java - 将 String 转换为 Activity 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7941378/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com