[英]Use onActivityResult to call a function
我有一个弹出窗口的PopUpActivity
,我对此非常满意。
但是,我希望能够将信息从弹出窗口返回给父活动,而且一旦弹出窗口关闭,还能够调用父活动上的函数。 有人可以帮助我吗?
这是我在PopUpActivity
代码:
public void closePopUpAndSendResultBack(){ // and how can i pass data to the previous activity?
//https://developer.android.com/training/basics/intents/result
Intent data = new Intent();
data.putExtra("data", "yo");
//startActivityForResult(data, 1); // gives me the error : android.content.ActivityNotFoundException: No Activity found to handle Intent { (has extras) }
setResult(Activity.RESULT_OK, data);
finish();
}
这是我想在 popUpWindow 关闭后调用的父(MainActivity)函数:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
nameTextField.setText(""); // how can i get Yo inside here?
showTheButton(); // and how can this function get called?
}
}
}}
此外,这是我如何从我的 Mainactivity 中弹出该窗口:
theOkButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent pop_up_that_window = new Intent(MainActivity.this,PopActivity.class);
pop_up_that_window.putExtra("first", "Velkommen du der!");
startActivity(pop_up_that_window);
}
});
}
有人可以帮我吗?
在 MainActivity 中使用:
theOkButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent pop_up_that_window = new Intent(MainActivity.this,PopActivity.class);
pop_up_that_window.putExtra("first", "Velkommen du der!");
MainActivity.this.startActivityForResult(pop_up_that_window, 1);
}
});
仍然在 onActivityResult() 的 MainActivity 中使用以下代码:
String yo = data.getStringExtra("data")
nameTextField.setText(yo);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.