java - 如何在跑步活动中获得额外内容?
问题描述
我想发送用户从当前活动输入的文本(就像一个对话框但不是一个)。Activity 1 在后台运行。到目前为止,我已经尝试过:
第二个活动代码:
submitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
if(companyNameEditText.getText().toString()!=null) {
intent.putExtra("companyName", companyNameEditText.getText().toString());
nameChanged=true;
finish();
}
else{
Toast.makeText(ChangeNameActivity.this,"Please enter a value",Toast.LENGTH_SHORT).show();
}
}
});
第二个活动的 onDestroy:
@Override
protected void onDestroy() {
super.onDestroy();
if(nameChanged)
{
activityFinishedWithChanges= true;
}
}
简历上的第一个活动:
@Override
protected void onResume() {
super.onResume();
if(ChangeNameActivity.activityFinishedWithChanges) {
companyNameText = findViewById(R.id.companyNameText);
if (getIntent().hasExtra("companyName")) {
String companyName = getIntent().getStringExtra("companyName");
if (companyName != null) {
if (!companyName.equals("")) {
companyNameText.setText(companyName);
AppUtils.setNameSharedPreference(BrandSettingsActivity.this, AppConstants.organizationName, getIntent().getStringExtra("companyName"));
}
}
}
}
}
在我的情况下,我得到一个空值。
解决方案
如果我正确理解您的问题,您希望将数据从(第二个活动)发送到您之前打开的(第一个活动)
因此,从您的 FirstActivity 调用 SecondActivity 使用 startActivityForResult() 方法
例如:
int ACTIVITY_CODE= 1
Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, ACTIVITY_CODE);
在您的 SecondActivity 中设置您想要返回给 FirstActivity 的数据。
例如:在 SecondActivity 如果你想发回数据:
Intent returnIntent = new Intent();
returnIntent.putExtra("result",result);
setResult(Activity.RESULT_OK,returnIntent);
finish();
现在在您的 FirstActivity 类中为 onActivityResult() 方法编写以下代码。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == ACTIVITY_CODE) {
if(resultCode == Activity.RESULT_OK){
String result=data.getStringExtra("result");
}
if (resultCode == Activity.RESULT_CANCELED) {
//Write your code if there's no result
}
}
}
希望它能解决你的问题:)
推荐阅读
- python - 如何通过 Selenium/Python 选择没有 ID 的 Web 元素
- firebase - Firebase Firestore:有没有办法强制集合中所有文档的必填字段?
- javascript - 函数内部的函数不等待javascript中的承诺
- python - 为什么使用 MLP 的 4 个输入 2 个输出函数逼近的损失如此之高?
- c++ - 除了使用#define 进行条件编译之外,还有其他选择吗?
- sql - 具有否定 (NOT) 模式匹配的 OrientDB MATCH 查询
- html - 如何将锚标签居中在父元素内,锚占据父元素的所有空间
- openssl - OpenSSL EVP_aes_256_ctr 使用什么计数器递增函数
- asp-classic - MySQL "max_execution_time" 在 Classic ASP 中使用 ODBC 连接器时默认为 30000ms,并且无法更改
- python - 关于python中while循环的问题