Android 创建两个活动活动一将有一个文本视图和一个按钮。-活动2将有一个文本字段(EditText)和一个按钮
你好,我有点问题。有人能帮我吗Android 创建两个活动活动一将有一个文本视图和一个按钮。-活动2将有一个文本字段(EditText)和一个按钮,android,Android,你好,我有点问题。有人能帮我吗 创建两个活动。 活动一将有一个文本视图和一个按钮 活动2将有一个文本字段(EditText)和一个按钮 从活动一调用startActivityForResult的第二个活动(意图、请求代码) 在活动2中,调用setResult(int resultCode,Intent data)并将textview值放入数据中,然后完成() 在活动1中,重写ActivityResult上的方法,并检查请求和结果代码是否与setResult(int resultCode,
- 创建两个活动。
- 活动一将有一个文本视图和一个按钮
- 活动2将有一个文本字段(EditText)和一个按钮
在活动1中,您将希望使用startActivityWithResult()调用活动2,如下所示: 然后在活动2中,您将在完成活动时返回结果:
Intent data = new Intent();
data.putExtra("ACTIVITY_TWO_KEY", "Here is your value");
setResult(Activity.RESULT_OK, data);
finish();
然后回到活动1,您将希望覆盖onActivityResult,如下所示:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (REQUEST_CODE) {
case ACTIVITY_TWO_REQUEST_CODE:
if (resultCode == Activity.RESULT_OK) {
//Load your text into your TextView from Activity Two
}
break;
}
super.onActivityResult(requestCode, resultCode, data);
}
在活动1中,您将希望使用startActivityWithResult()调用活动2,如下所示: 然后在活动2中,您将在完成活动时返回结果:
Intent data = new Intent();
data.putExtra("ACTIVITY_TWO_KEY", "Here is your value");
setResult(Activity.RESULT_OK, data);
finish();
然后回到活动1,您将希望覆盖onActivityResult,如下所示:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (REQUEST_CODE) {
case ACTIVITY_TWO_REQUEST_CODE:
if (resultCode == Activity.RESULT_OK) {
//Load your text into your TextView from Activity Two
}
break;
}
super.onActivityResult(requestCode, resultCode, data);
}
您希望使用传递到ActivityResult的
中的意图
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == 1)
{
String str = data.getExtras().getString("name");
TextView t = (TextView) findViewById(R.id.textView1);
t.setText(str);
}
else
{
}
}
您希望使用传递到ActivityResult的中的意图
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == 1)
{
String str = data.getExtras().getString("name");
TextView t = (TextView) findViewById(R.id.textView1);
t.setText(str);
}
else
{
}
}
试试这个,不要再调用getIntent()
尝试此操作,不要再次调用getIntent()。潜在问题:
您的第二个活动中不存在editText1。也许它叫别的什么李>
getIntent()不应在其中使用,因为它返回用于启动活动的意图,而不是结果数据。正如goto10所指出的,数据是在onActivityResult中使用的正确意图
潜在问题:
您的第二个活动中不存在editText1。也许它叫别的什么李>
getIntent()不应在其中使用,因为它返回用于启动活动的意图,而不是结果数据。正如goto10所指出的,数据是在onActivityResult中使用的正确意图
你到底有什么问题?你试过什么?我现在看到的只是一个赋值(可能是家庭作业,所以你忘了一个家庭作业标记)和你发明的0%。你在清单中声明了第二个活动了吗?应用程序意外停止了…这不是例外。使用adb logcat获取异常的堆栈跟踪,您的问题到底是什么?你试过什么?我现在看到的只是一个赋值(可能是家庭作业,所以你忘了一个家庭作业标记)和你发明的0%。你在清单中声明了第二个活动了吗?应用程序意外停止了…这不是例外。使用adb logcat获取异常的堆栈跟踪请您为两个活动编写代码,我不为您编写代码。请您为两个活动编写代码,我不为您编写代码。我在startActivityForResult(我,活动\u两个\u请求\u代码)上遇到错误;实际上,我没有得到什么是活动二请求代码?它是变量还是字符串?看起来你对Android很陌生。我建议你先看看官方文件,自己试试看。ACTIVITY_TWO_REQUEST_代码是您定义的一个常量非负整数,因此您知道谁请求结果。是的,我对android非常陌生。我将声明一个字符串ACTIVITY\u TWO\u REQUEST\u代码,然后我就可以使用它了?是的,它应该由您定义。请看这里:不,不是字符串,而是int,值应该是非负的。在大多数情况下,您可以简单地将其设为0。我在startActivityForResult(I,ACTIVITY\u TWO\u REQUEST\u CODE)上收到一个错误;实际上,我没有得到什么是活动二请求代码?它是变量还是字符串?看起来你对Android很陌生。我建议你先看看官方文件,自己试试看。ACTIVITY_TWO_REQUEST_代码是您定义的一个常量非负整数,因此您知道谁请求结果。是的,我对android非常陌生。我将声明一个字符串ACTIVITY\u TWO\u REQUEST\u代码,然后我就可以使用它了?是的,它应该由您定义。请看这里:不,不是字符串,而是int,值应该是非负的。在大多数情况下,您可以简单地将其设为0。