Android中activity传值的两种方式

第一种:第一个Activity

 /**
     * 通过这个方法跳转到activity2界面*/
    public void gotoActivity2(View v){
    	//创建一个意图
    	Intent intent=new Intent(this,MainActivity2.class);
    
    
    	//第一种传值方式
    	Bundle bundle=new Bundle();
    	bundle.putString("name","zhangsan");
    	bundle.putInt("age", 23);
    	intent.putExtra("person", bundle);
    	//启动另一个activity
    	startActivity(intent);
    }

第二个Activity

/**
	 * Activity被创建时调用
	 * 可以在该方法中初始化UI组件
	 * 该方法调用完毕会调用onStart()方法
	 * */
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        System.out.println("MainActivity2-onCreate()");
        
        
        //获取上一个activity传过来的参数
        Intent intent=getIntent();
        Bundle bundle=intent.getBundleExtra("person");
        String name= bundle.getString("name");
        int age=bundle.getInt("age");
        System.out.println(name+"   :  "+age);
        TextView textView=(TextView) findViewById(R.id.textView2);
        textView.setText("name="+name+"  age="+age);
        
    }

第二种:activity1

      //第二种传值方式
    intent.putExtra("name", "小白");
   startActivity(intent);

activity2

      Intent intent=getIntent();        
      String name2= intent.getStringExtra("name");
      TextView textView=(TextView) findViewById(R.id.textView2);
      textView.setText("name2="+name2);

传递自定义类型(自定义类,自定义类必须序列化)

activity1

            //传递自定义类型
    	    Cat cat=new Cat(1, "校花", 23);
    	    intent.putExtra("cat", cat);
    	    startActivity(intent);

activity2

            //第二种
            String name2= intent.getStringExtra("name");
            Cat cat=(Cat) intent.getSerializableExtra("cat");
            TextView textView=(TextView) findViewById(R.id.textView2);
            textView.setText("cat="+cat.toString());
时间: 2024-08-25 16:21:12

Android中activity传值的两种方式的相关文章

(原创)android中使用相机的两种方式

在社交类应用或扫描二维码的场合都需要用到手机上的摄像头 在程序中启用这一硬件主要有两类方法 1.发送intent启动系统自带的摄像应用 此应用的AndroidManifest中的intent-filter如下 <intent-filter> <action android:name="android.media.action.VIDEO_CAPTURE" /> <category android:name="android.intent.cate

转:在android中button响应的两种方式

1. 在布局文件中添加button的监听名字 Android:onClick="buttonOnClick" 例如: <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/button1&q

Android模拟点击的两种方式

导论 在Android中模拟一个点击事件有两种方式是通过模拟MotionEvent来实现:一种是通过ADB来实现 第一种:模拟MotionEvent 通用方法如下: private void setSimulateClick(View view, float x, float y) { long downTime = SystemClock.uptimeMillis(); final MotionEvent downEvent = MotionEvent.obtain(downTime, dow

Android攻城狮 Android中更新UI的几种方式

Android中更新UI的几种方式: 1. Activity 的 runOnUiThread() 2. Handler 的 post() 3. Handler 的 sendMessage() 4. View 的 post() 1 public class FiveActivity extends Activity { 2 3 private TextView textView; 4 5 private Handler handler = new Handler() { 6 public void

使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 选择调用的进程为 24 i386 getuid sys_getuid1647 i386 getgid sys_getgid16 使用库函数API方式 使用C代码中嵌入汇编代码方式

实验--使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用(杨光)

使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 攥写人:杨光  学号:20135233 ( *原创作品转载请注明出处*) ( 学习课程:<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验要求: 选择一个系统调用(13号系统调用time除外),系统调用列表参见http://codelab.shiyanlou.com/xref/linux-3.18.6/arch/x86/syscalls/sys

java中设置代理的两种方式

1 前言 有时候我们的程序中要提供可以使用代理访问网络,代理的方式包括http.https.ftp.socks代理.比如在IE浏览器设置代理. 那我们在我们的java程序中使用代理呢,有如下两种方式.直接上代码. 2 采用设置系统属性 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 import jav

JavaWeb应用中初始化Log4j的两种方式

本文主要介绍了普通JavaWeb应用(基于Tomcat)中初始化Log4j的两种方式: 1.通过增加 InitServlet ,设置令其自启动来初始化 Log4j . 2.通过监听器 ServletContextListener 监听 ServletContext 的初始化事件来初始化 Log4j . 先来看下方式一,直接上代码: web.xml 编写如下: 1 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 2 xmlns

Android实现音频录制的两种方式

在移动APP开发中,每逢APP应用设计到多媒体开发的时候,都会让很多的程序员头疼不已,而且项目的开发进度会放慢.项目 的难度也会加大蛮多,同时APP的测试也会增加.Android中的多媒体开发,有音频的播放.音频的录制.视频的播放.视频的录制 等,虽然Android的SDK中提供了一些基础的开发API类,如音频的录制就提供了两种方式:AudioRecord录制音频和MediaRecorder录 制音频.AudioRecord类相对于MediaRecorder来说,更加接近底层,为我们封装的方法也