gpt4 book ai didi

java - 没有空构造函数 : android class

转载 作者:行者123 更新时间:2023-12-02 05:55:08 24 4
gpt4 key购买 nike

我的问题是,我正在 Activity 之间传输两个数组。从一个 Activity 返回到另一个 Activity。我通过构造函数获取这两个 Activity (我认为)。它是否正确?为什么我收到错误:没有空构造函数?

这是我的类(class),其中的 Activity 来自:

public PlanOutputActivity fetchallRoutes(String startStop, String endStop, String time) {
.
.
.
return new PlanOutputActivity(convertArray(),routenArray);

这是我的 Activity ,我想在其中获取这两个数组:

public class PlanOutputActivity extends Activity {

Intent intent;
Object[][] routenArray;
String[][] itemsArray;
DatabaseHelperActivity mdbH;
public int RESULT_OK = 123;
public int REQUEST_OK = 456;

public PlanOutputActivity(String[][] itemsArray, String[][] routenArray){
setContentView(R.layout.planoutputlayout);
this.routenArray = routenArray;
this.itemsArray = itemsArray;
}

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated constructor stub
super.onCreate(savedInstanceState);
}
public void getRoute() {

intent = getIntent();
mdbH = new DatabaseHelperActivity(this);
mdbH.fetchallRoutes(intent.getStringExtra("StartHaltestelle"),intent.getStringExtra("ZielHaltestelle"),intent.getStringExtra("Zeit"));
ListView lvList = (ListView)findViewById(R.id.ListOutput);
ArrayAdapter<DefineRouteActivity> adapter = new RouteAdapterActivity(this, route);
lvList.setAdapter(adapter);

lvList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
int gKennung = view.getId();
Intent intent = new Intent(getApplicationContext(),DetailOutputActivity.class);
intent.putExtra("Kennung",gKennung);
intent.putExtra("routenArray",routenArray);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
});
}

最佳答案

您无法使用 new 创建 Android Activity 实例 - 它根本不起作用。

创建 Activity 的唯一方法是从应用程序启动器启动它,或者调用 startActivity(...) (或其他方法之一)方法,例如 startActivityForResult(...) 等)。

因此,您不应该为 Activity 创建构造函数,也不应该创建 public static 字段或方法来访问数据或调用其中的方法来自任何其他应用程序类的 Activity

如果您想将数据从一个Activity传递到另一个Activity,请使用Intent中的额外功能,或者简单地将数据保留在SharedPreferences中或数据库。或者创建一个“帮助程序”类来保存数据 - 使用单例模式对此很常见。

关于java - 没有空构造函数 : android class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23175391/

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