在android中页面的跳转跟传值是非常重要的内容,所以不会的同学还是要用点心去多打两次。没有什么问题是打一遍代码不能解决如果有的话,那就是n+1遍的问题。
首先我们去看一篇博客的时候,最好先看下博客有哪些你没见过的知识点,然后边看边百度,不要看到博客里面的内容没见过,就觉得很难,开始烦躁没有心情去慢慢看下去。
好,首先 我们要 知道 Intent Bundle OnActivityResult 的相关知识,才能更加轻松的看完。
 我们要实现的效果是 a 跳转到b,在把内容传到b界面。好,现在来开始写我们的代码了。(突然发现,不用黑体写代码,自己瞬间都变得萌萌哒了)。
首先我们来用Bundle实现两个页面之间的跳转,A页面跳转到B页面。
这是a页面,当我们按钮button的时候,进行跳转到button页面,并且将我们需要传递的东西,通过Bundle数据携带包通过key Value的形式来传递(就是一个钥匙去开这把锁)。
<strong>package com.example.bundle;import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;public class MainActivity extends ActionBarActivity {private Button button;protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button=(Button) findViewById(R.id.button);button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();</strong>
<strong>                                //这是数据携带包,后面的onActivityResult方式也会用到这种方式来进行值得传递Bundle bundle=new Bundle();bundle.putString("key", "value");intent.putExtras(bundle);</strong>
<strong>                                  //设置我们需要前往的页面(本页面,目标页面)intent.setClass(MainActivity.this, activity.class);</strong>
<strong>                                 //启动ac,将我们刚刚绑定数据的数据包放进去,等会页面进行跳转的时候,也会把他携带过去startActivity(intent);}});}}</strong>
<strong>接下来我们看看 B页面 他是如何进行数据的接受的。 其实说到底 也就是两行代码的时候 我们通过解包获取数据 在把我们包里面的东西放在textview上面显示出来</strong>
<div><strong>package com.example.bundle;</strong></div><div><strong></strong>
</div><div><strong>import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.ActionBarActivity;
import android.widget.TextView;</strong></div><div><strong></strong>
</div><div><strong>public class activity  extends ActionBarActivity{
private TextView textview1;
protected void onCreate(@Nullable Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity2);
textview1=(TextView) findViewById(R.id.textview1);</strong></div><div><strong>
Bundle myBundle=this.getIntent().getExtras();
String myText=myBundle.getString("key");
textview1.setText(myText);
}
}</strong>
</div><strong></strong>
在我们写页面跳转的时候千万不要忘记在fest里面经行配置activity哦
布局很简单我们就不把布局贴出来 我在下面 会把那个demo的链接贴出来的。

下面我们开始用onActivityResult配合Bundle来进行我们的数据传递
还是实现一样的功能从a跳转到b并且传递内容。
a页面代码。我会故意把这里的命名写的很烂,这样你们要看懂就需要更加用心的去看代码了。嘻嘻。
package com.example.onactivityresult;import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;public class MainActivity extends ActionBarActivity {private EditText tet;private Button btn;private TextView view;protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn=(Button) findViewById(R.id.btn);tet=(EditText) findViewById(R.id.tet);view=(TextView) findViewById(R.id.view);btn.setOnClickListener(new OnClickListener() {public void onClick(View v) {Intent intent=new Intent();String str= tet.getText().toString();intent.putExtra("textView_Name", str);//设置启动监听返回值的activity,并请求请求码 requestcodeintent.setClass(MainActivity.this, sendActivity.class);
                                 //这个1 很关键,这是他们在同一条船上的标识,那边接受数据 key 值要对 标识符要对,不然接收不到数据的startActivityForResult(intent, 1);}});}@Override//传入请求码,返回码,intentprotected void onActivityResult(int requestCode, int resultCode, Intent data) {// TODO Auto-generated method stubif (requestCode==1&&resultCode==1) {Bundle bundle=data.getExtras();String strResult=bundle.getString("result");Toast.makeText(MainActivity.this, strResult, 1).show();}}//保存activity在onstop之前执行@Overrideprotected void onSaveInstanceState(Bundle outState) {// TODO Auto-generated method stubsuper.onSaveInstanceState(outState);String ContentString=tet.getText().toString();outState.putString("sava", ContentString);}}
a跳转到B页面,b接受a传递过来的数据,大概代码跟上面的bundle差不多就不再啰嗦写注释了
package com.example.onactivityresult;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;
import android.widget.EditText;
import android.widget.TextView;public class sendActivity extends Activity {private Button buttonContent;private TextView textViewContent;private EditText textContent;protected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.secondactivity);buttonContent=(Button) findViewById(R.id.buttonContent);textViewContent=(TextView) findViewById(R.id.textViewContent);textContent=(EditText) findViewById(R.id.textContent);Intent intent=getIntent();Bundle bundle=intent.getExtras();String strContentString=bundle.getString("textView_Name");textViewContent.setText(strContentString);buttonContent.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent =new Intent();intent.putExtra("sendActivity", textContent.getText().toString());setResult(1, intent);finish();}});}
DEMO下载链接:Bundle跳转传值 



android intent的跳转,页面传值相关推荐

  1. php中的id怎么传值,uniapp如何跳转页面传值

    uniapp跳转页面传值的方法:首先给点击事件传入id:然后Methods中写方法,代码为[uni.navigateTo({url:'opportunity-form?id='+id})]:最后在详情 ...

  2. Vue跳转页面传值(带参数)

    Vue跳转页面传值(带参数) <div><div><input type="text" placeholder="输入关键字搜索" ...

  3. 原生app跳html页面传值,HTML页面跳转及参数传递问题

    HTML页面跳转: window.open(url, "", "width=600,height=400"); 第二个参数:_self,在当前窗口打开窗口:_b ...

  4. android+通过菜单跳转页面,【风马一族_Android】通过菜单的点击,跳转到不同界面...

    ---恢复内容开始--- 布局的代码:activity_main.xml 1 <?xml version="1.0" encoding="utf-8"?& ...

  5. VUE跳转页面传值 地址栏显示参数或者不显示地址栏参数

    添加路由 {path: '/Qyqxhx',component: Qyqxhx,name: 'Qyqxhx',meta: {title: '页面名称'}}, params 传参 : 相当于post请求 ...

  6. Android 使用Navigation 跳转页面时发生crash

    crash问题日志 Fatal Exception: java.lang.IllegalArgumentException navigation destination com.xxx.yyy:id/ ...

  7. 极光推送android点击跳转页面,app关闭时点击推送消息实现页面跳转

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: ...

  8. 工作311:uni-携带当前参数跳转页面传值

    第一步 <view v-for="(item,index) in tableData" @click="getDetail(item.id)" class ...

  9. 【Android基础】页面跳转与传值(Activity跳转与传值)

    一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求. 本次我们就讲一下,Android中页面跳转以及传值的几种方式 ...

最新文章

  1. npoi导出execl源码,vs2008实现,包括using库
  2. 系统下装软件_电力二次设备自动测试系统
  3. Spring Boot静态资源访问和配置全解析
  4. scrum与第一次teamwork
  5. 【LOJ166】拉格朗日插值2【拉格朗日插值】【NTT卷积】
  6. 异步解耦_如何使用异步生成器解耦业务逻辑
  7. preserve log什么意思_一些有意思的JavaScript代码片段
  8. python中range语法
  9. #import和@class 的区别
  10. java中 有return 的情况,return以及try,finally代码块的执行顺序
  11. Android中文API(142) —— Gravity
  12. Oracle中UNION和ORDER BY共用方法
  13. Atitit.js javascript异常处理机制与java异常的转换.js exception process Voae
  14. 关于Linux/kernel.h中的offsetof和container_of宏
  15. Java自学路线图之Java进阶自学
  16. 耗时两周,纯手敲python入门级基础笔记
  17. 论文查重的内容是哪些?
  18. 开篇──纪念调零的百合
  19. 幂等性问题以及处理方法
  20. outb,inb等I/Oport操作函数

热门文章

  1. Disruptor框架中生产者、消费者的各种复杂依赖场景下的使用总结-我见过最好的Disruptor
  2. 仿小米导航栏html+css
  3. 开发版微信小程序手机版无法访问服务器,微信小程序 安卓 真机调试 202:net::ERR_CERT_AUTHORITY 无法请求接口 请求接口无响应...
  4. Materials Studio构建密勒晶面
  5. 软银、诺基亚、宝马、国美、Lazada、搜狗等公司高管变动
  6. 超声波相关——抗干扰
  7. 拍卖!黄岛西海岸“银十”集中拍卖17块土地!海底隧道口5宗黄金地块意外流拍
  8. Linux:切换当前进程的权限
  9. gcc找不到Linux/in,已安装GCC,但找不到命令
  10. Android live tv,LiveTvplay