仍然工作在我的技能,在机器人。
在这里,我的问题是,我从数据库中包含名称是在旋转,当我在标签上点击一个标签,一个对话框出现,给你三个选择:1.更新。 2.删除。 3.取消。 我在第二个和第三个选择了,但在更新现在面临这个问题; 我去有一个EditText和2个按钮,另一个活动,保存和取消,我想保存按钮来从EDITTEXT在putExtra数据并发送回同以前的活动,并与来自数据改变旧标签该EDITTEXT。
我感谢所有帮助。 提前致谢。
仍然工作在我的技能,在机器人。
在这里,我的问题是,我从数据库中包含名称是在旋转,当我在标签上点击一个标签,一个对话框出现,给你三个选择:1.更新。 2.删除。 3.取消。 我在第二个和第三个选择了,但在更新现在面临这个问题; 我去有一个EditText和2个按钮,另一个活动,保存和取消,我想保存按钮来从EDITTEXT在putExtra数据并发送回同以前的活动,并与来自数据改变旧标签该EDITTEXT。
我感谢所有帮助。 提前致谢。
在你的第二个活动,你可以从该方法的第一个活动获取数据getIntent()
然后getStringExtra()
getIntExtra()
...
然后返回到您的第一个活动,你必须使用setResult()
的意图数据的方法即可返回作为参数。
为了让您的第二个活动返回的数据在你的第一个活动,只是重写onActivityResult()
方法,并使用意图获取数据。
第一项活动:
//In the method that is called when click on "update"
Intent intent = ... //Create the intent to go in the second activity
intent.putExtra("oldValue", "valueYouWantToChange");
startActivityForResult(intent, someIntValue); //I always put 0 for someIntValue
//In your class
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//Retrieve data in the intent
String editTextValue = intent.getStringExtra("valueId");
}
第二项活动:
//When activity is created
String value = intent.getStringExtra("oldValue");
//Then change the editText value
//After clicking on "save"
Intent intent = new Intent();
intent.putExtra("valueId", value); //value should be your string from the edittext
setResult(somePositiveInt, intent); //The data you want to send back
finish(); //That's when you onActivityResult() in the first activity will be called
不要忘了与启动第二个活动startActivityForResult()
方法。
你要传递的信息是临时演员。
传递信息
Intent i = new Intent();
i.setClassName("com.example", "com.example.activity");
i.putExtra("identifier", VALUE);
startActivity(i);
获取信息
Bundle extras = getIntent().getExtras();
String exampleString = extras.getString("identifier");
当你要开始第二次活动,请使用startActivityForResult(your intent, request code);
在你的第一个活动中使用
protected void onActivityResult(int requestCode, int resultCode,
Intent data) {
if (requestCode == your_reques_code) {
if (resultCode == RESULT_OK) {
// do your stuff
}
}
}
之前完成第二活性不要忘记这一点,
Intent data = new Intent();
data.putExtra("text", edtText.getText());
setResult(RESULT_OK, data);