我有一些变量,我想传递给我的下一个活动,但我无法想办法做到这一点.
我的变量是:
JSONObject jsonObj = jsonArray.getJSONObject(i);
String propId = jsonObj.getString("id");
Log.i("Value id", propId);
String propCity = jsonObj.getString("city");
Log.i("Value city", propCity);
String propPlace = jsonObj.getString("place");
Log.i("Value place", propPlace);
String propStation = jsonObj.getString("station");
Log.i("Value station", propStation);
我用来获取它们的代码是:
Bundle extras = new Bundle();
extras.putString("id", propId);
extras.putString("city", propCity);
extras.putString("place", propPlace);
extras.putString("station", propStation);
有人可以帮我这个吗?
解决方法:
您发布的代码是将它们写入Bundle,在Bundle中写入后使用.putExtras()将您的bundle放入Intent中.
intent.putExtras(bundle);
例:
Intent intent = new Intent(this, YourClass.class);
Bundle extras = new Bundle();
extras.putString("id", propId);
extras.putString("city", propCity);
extras.putString("place", propPlace);
extras.putString("station", propStation);
intent.putExtras(bundle);
startActivity(intent);
要在您的活动中阅读它,请使用getExtras()获取传递给它的Bundle,然后使用getString / getXXX.
无论如何,你可以避免创建Bundle并直接使用Intent的set方法,它们以相同的方式工作.
所以它会是:
Intent intent = new Intent(this, YourClass.class);
intent.putExtra("id", propId);
intent.putExtra("city", propCity);
intent.putExtra("place", propPlace);
intent.putExtra("station", propStation);
startActivity(intent);
标签:android,variables,android-activity
来源: https://codeday.me/bug/20190725/1531030.html