我的app app有问题。我是新手,我正在学习。我有2个活动,首先调用第二个活动,在此活动中我添加字符串,我想在第一个活动中看到这个新字符串,我尝试使用此代码
protected void onStart() {
Bundle bundle = getIntent().getExtras();
paises.add(bundle.getString("Pais"));
Log.i("pais", bundle.getString("Pais"));
habitantes.add(bundle.getString("Habitantes"));
super.onStart();
}
我尝试使用OnCreate,OnResume和我的应用程序关闭,任何人都可以帮助我吗?
在第二个活动中我把这段代码
Intent i = new Intent(this, MainActivity.class);
i.putExtra("Pais", pa);
i.putExtra("Habitantes", ha);
编辑:是一个简单的应用程序,在第一个活动中我有一个arrayList,我想在另一个活动中添加到这个arrayLista一个字符串,但是当我转向第一个活动时,arraylist不会更新:S
答案 0 :(得分:1)
试试这个:
Intent i = new Intent(this, MainActivity.class);
Bundle args = new Bundle();
args.putString("Pais", pa);
args.putString("Habitantes", ha);
i.putExtras(args);
答案 1 :(得分:1)
你必须先致电super.onStart()
。
void onStart(Bundle savedState) {
super.onStart(savedState);
// your code here .....
}
onResume
和onCreate
答案 2 :(得分:0)
它有效,ty Alex和Bene,正确的形式是与你的混合^^
第一项活动onCreate
if (getIntent().getExtras() != null){
Bundle bundle = getIntent().getExtras();
paises.add(bundle.getString("Pais"));
habitantes.add(bundle.getString("Habitantes"));
}
第二项活动
Intent i = new Intent(this, MainActivity.class);
Bundle args = new Bundle();
args.putString("Pais", pa);
args.putString("Habitantes", ha);
i.putExtras(args);
startActivity(i)