gpt4 book ai didi

java - Android-无法将字符串传递给另一个 Activity 中的方法

转载 作者:行者123 更新时间:2023-12-02 12:10:33 25 4
gpt4 key购买 nike

我有两个 Activity ,MainActivity 和 NearbyPlacesActivity。我试图将一个字符串从 NearbyPlacesActivity 传递到 MainActivity 中的 show() 方法。但是,我最终得到一个错误:

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference

这是附近地点 Activity :

private void showNearbyPlaces(List<HashMap<String, String>> nearbyPlaceList)
{
ArrayList<String> list_names = new ArrayList<String>();

for(int i = 0; i < nearbyPlaceList.size(); i++)
{

HashMap<String, String> googlePlace = nearbyPlaceList.get(i);
String placeName = googlePlace.get("place_name");
list_names.add(placeName);
}

String alist = list_names.toString();
String blist = alist.replace("[", "").replace("]", "");

MainActivity main=new MainActivity();
main.show(blist);

}

这是 MainActivity 中的 show 方法:

public void show(String blist){
random_text.setText(blist);
}

我可以在 MainActivity 中设置文本,但似乎无法从 NearbyPlacesActivity 传递任何变量。谢谢您的帮助。

最佳答案

您不应该这样做来在 Android 中打开 Activity。Android 使用 Intent ,因此如果您想打开主 Activity 并向其传递数据。只需使用以下内容

Intent intent = new Intent(NearbyPlacesActivity.this,MainActivity.class);
intent.putExtra("string_key","string_value");
startActivity(intent);

如果您只想将数据传递给另一个 Activity 内的方法。您应该保留对该 Activity 的引用,以便可以使用其底层方法。引用在 onResume 上设置并在 onDispose 上取消设置

关于java - Android-无法将字符串传递给另一个 Activity 中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46586937/

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