zoukankan      html  css  js  c++  java
  • 二十、Activity之间通信

    在一个Activity中可以使用系统提供的startActivity(Intent intent)方法打开新的Activity,在打开新的Activity前,你可以决定是否为新的Activity传递参数。

                 

    第一种:打开新的Activity,不传递参数

    public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button btnOpen
    =(Button)this.findViewById(R.id.btnOpen);
    btnOpen.setOnClickListener(
    new View.OnClickListener(){
    public void onClick(View v) {
    //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
    startActivity(new Intent(MainActivity.this, OtherActivity.class));
    }
    });

    }

    }

                       

                       

    第二种:打开新的Activity,并传递若干个参数给它

    package com.ljq.activitys;

    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;

    public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button btnOpen
    =(Button)this.findViewById(R.id.btnOpen);
    btnOpen.setOnClickListener(
    new View.OnClickListener(){
    public void onClick(View v) {
    //第一种:打开新的Activity,不传递参数
    //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
    //startActivity(new Intent(MainActivity.this, OtherActivity.class));

    //第二种:打开新的Activity,并传递若干个参数给它
    Intent intent=new Intent(MainActivity.this, OtherActivity.class);
    //Bundle类用作携带数据
    Bundle bundle=new Bundle();
    bundle.putString(
    "name", "linjiqin");
    bundle.putInt(
    "age", 24);
    //附带上额外的数据
    intent.putExtras(bundle);
    startActivity(intent);

    }
    });

    }

    }

    在新的Activity中接收前面Activity传递过来的参数

    package com.ljq.activitys;

    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;

    public class OtherActivity extends Activity {
    private final static String TAG="OtherActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.other);

    //在新的Activity中接收前面Activity传递过来的参数
    Bundle bundle=this.getIntent().getExtras();
    String name
    =bundle.getString("name");
    Integer age
    =bundle.getInt("age");
    Log.i(TAG, name
    +" : "+age);

    }

    }
  • 相关阅读:
    linux通知链相关
    Android Uevent 分析,从kernel到framework
    Linux下 使用 中断唤醒 已经suspend的 系统
    Android中休眠与唤醒之wake_lock, early_suspend, late_resume
    android电池(四):电池 电量计(MAX17040)驱动分析篇
    android 电池(三):android电池系统
    android 电池(二):android关机充电流程、充电画面显示
    android 电池(一):锂电池基本原理篇
    dev_name和dev_set_name对设备的名字进行操作
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:Hibernatehbm.xml
  • 原文地址:https://www.cnblogs.com/linjiqin/p/2071196.html
Copyright © 2011-2022 走看看