为了账号安全,请及时绑定邮箱和手机立即绑定

返回值不出现

老师您好!

package com.example.activityintent;


import android.app.Activity;

import android.content.Context;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;


public class FActivity extends Activity{

private Button bt1;

private Button bt2;

private TextView tv;

protected void onCreate(Bundle SavedInstanceState) {

super.onCreate(SavedInstanceState);

setContentView(R.layout.factivity);

/*

* 通过点击bti实现页面之间的跳转

* 1.startActivity的方式来实现

*/

bt1=(Button)findViewById(R.id.button1_first);

bt2=(Button)findViewById(R.id.button2_second);

tv=(TextView)findViewById(R.id.textView1);

//注册点击事件

bt1.setOnClickListener(new OnClickListener(){

public void onClick(View v){

//初始化Intent

//第一个参数:上下文对象this;第二个参数:目标文件。

Intent intent = new Intent(FActivity.this, SActivity.class);

startActivity(intent);

}

});

bt2.setOnClickListener(new OnClickListener(){

public void onClick(View v){

Intent intent = new Intent(FActivity.this, SActivity.class);

//第一个参数:Intent对象;第二个参数:请求的一个标识

startActivityForResult(intent, 1);

}

});

}

//通过startactivityForResult跳转,接收返回数据的方法

protected void onActivityResut(int requestCode, int resultCode, Intent data){

//requestCode:请求的标识;resultCode:第二个页面返回的标识;data:第二个页面回传的数据

super.onActivityResult(requestCode, resultCode, data);

if(requestCode==1 && resultCode==2){

String content=data.getStringExtra("data");

tv.setText(content);

}

}


}





package com.example.activityintent;


import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;


public class SActivity extends Activity {

private Button bt;

private String content="您好"; 

protected void onCreate(Bundle SavedInstanceState) {

super.onCreate(SavedInstanceState);

setContentView(R.layout.sactivity);

bt=(Button)findViewById(R.id.button1);

//注册点击事件

bt.setOnClickListener(new OnClickListener(){

public void onClick(View v){

Intent data = new Intent();

data.putExtra("data", content);

setResult(2, data);

//结束当前页面

finish();

}

});

}


}

哪里出现问题,返回的值没有出现

正在回答

3 回答

if(requestCode == 1 || requestCode==2){
     String content = data.getStringExtra("data");
     tv.setText(content);
}

这里的逻辑出了问题。你试试这样写。只是原理我还在找

0 回复 有任何疑惑可以回复我~

我的也是刚打开时第一个页面文本部分还显示打上去的“返回第二个页面的内容”,点击完第二个启动,再返回第一个页面就连texview的文本都找不到了。好无语

0 回复 有任何疑惑可以回复我~

package com.example.intent;


import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;


public class SActivity extends Activity{

private Button bt;

private String content ="你好";

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.sactivity);

/*

* 什么时候给第一个页面回传数据

* 回传 到第一个页面的实际上是一个intent对象

*/

bt=(Button) findViewById(R.id.button1);

bt.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Intent data = new Intent(); 

data.putExtra("data", content);

setResult(2, data);

//结束当前页面

finish();

}

});


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第一门课(入门篇)
  • 参与学习       312584    人
  • 解答问题       4633    个

想快速掌握Android应用开发基础,选择学习这门课程就对了。

进入课程

返回值不出现

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信