Android中Activity之间跳转和参数传递的实例

一个activity就好比一个网页,此文章讲解怎样创建一个activity并且实现跳转!

一、学习创建Activity

1、新建一个java类,右击src目录,选择new-->class,新的activity需要继承Activity类

2、需要复写onCreate()

例子:

package com.example.testsend;

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

public class MainActivity2 extends Activity{

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

}

3、配置到AndroidManifext.xml,在application下创建一个新的activity,如果跟MainActivity同一目录,可以只写.name,否则加包名,不过建议写全。

 <activity android:name="com.example.testsend.MainActivity2">
      </activity>

如果希望新的activity作为首页展示,把intent-filter那一块搬过来就可以了。

二、Activity之间的通信

 1、打开一个新的Activity,不传递参数

 <Button
    android:id="@+id/btnOpen"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="打开新页面"
    android:onClick="OpenNew"
    />

点击按钮触发的方法:

MainActivity.java设置方法

  public void OpenNew(View v){
  //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
  Intent intent =new Intent(MainActivity.this,MainActivity2.class);
  startActivity(intent);
  }

2、打开新的Activity并传递参数

MainActivity.java传递参数

public void OpenNew(View v){
  //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
  Intent intent =new Intent(MainActivity.this,MainActivity2.class);

  //用Bundle携带数据
  Bundle bundle=new Bundle();
  //传递name参数为tinyphp
  bundle.putString("name", "tinyphp");
  intent.putExtras(bundle);

  startActivity(intent);
  }

MainActivity2.java接收参数

 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.newtest);  

    //新页面接收数据
    Bundle bundle = this.getIntent().getExtras();
    //接收name值
    String name = bundle.getString("name");
    Log.i("获取到的name值为",name);
  } 

接收成功:

demo下载地址:http://xiazai.jb51.net/201702/yuanma/Activitytest_jb51.rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android笔记之:App应用之启动界面SplashActivity的使用

    当前比较成熟一点的应用基本上都会在进入应用之显示一个启动界面.这个启动界面或简单,或复杂,或简陋,或华丽,用意不同,风格也不同.下面来观摩几个流行的应用的启动界面. 1. 货比三家以腾讯qq,新浪weibo,UC浏览器,游戏神庙逃亡等7个应用为例,比比看:(我认为最精美的界面应该是qq2012,虽然只有一张图,基本的应用名称,版本,图标这些信息都有,但是看着舒服,觉得美.) 2. 元素启动界面的本意是以友好用户界面来掩饰后台缓冲加载,让用户用平和等待的心情进入正常应用界面.但是因为启动界面是放在

  • Android 启动另一个App/apk中的Activity实现代码

    Android 启动另一个App/apk中的Activity实现代码 前言: Android提供了在一个App中启动另一个App中的Activity的能力,这使我们的程序很容易就可以调用其他程序的功能,从而就丰富了我们App的功能.比如在微信中发送一个位置信息,对方可以点击这个位置信息启动腾讯地图并导航.这个场景在现实中作用很大,尤其是朋友在陌生的环境找不到对方时,这个功能简直就是救星. 本来想把本文的名字叫启动另一个进程中的Activity,觉得这样才有逼格.因为每个App都会运行在自己的虚拟

  • Android实现开机自动启动Service或app的方法

    本文实例讲述了Android实现开机自动启动Service或app的方法.分享给大家供大家参考,具体如下: 第一步:首先创建一个广播接收者,重构其抽象方法 onReceive(Context context, Intent intent),在其中启动你想要启动的Service或app. import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; i

  • Android Activity中使用Intent实现页面跳转与参数传递的方法

    本文实例讲述了Android Activity中使用Intent实现页面跳转与参数传递的方法.分享给大家供大家参考,具体如下: 新建一个FirstAvtivity.java package com.zhuguangwei; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.O

  • Android App应用启动分析与优化

    app的启动方式:  1.)冷启动  当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动.冷启动因为系统会重新创建一个新的进程分配给它,所以会先创建和初始化Application类,再创建和初始化MainActivity类(包括一系列的测量.布局.绘制),最后显示在界面上.  2.)热启动  当启动应用时,后台已有该应用的进程(例:按back键.home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看),所以在已有进程

  • Android intent之间复杂参数传递方法详解

    本文详细讲述了Android intent之间复杂参数传递方法.分享给大家供大家参考,具体如下: Intent是Activity与Activity之间,Activity与Service之间传递参数的介质,而这两种通常实现的是Java基本对象类型和String的传递. 在实际项目中,页面之间传值,除了以上几种,经常还有传递Object对象.List类型.List<Object>类型和全局变量等等的需求.本文就是介绍怎么传递这几种类型的参数. 一.传递List<String>和List

  • Android编程实现启动另外的APP及传递参数的方法

    本文实例讲述了Android编程实现启动另外的APP及传递参数的方法.分享给大家供大家参考,具体如下: 有时候需要从一个APP中启动另外一个APP,比如Twitter/微信等. 如果你不知道那个APP的Activity,但是知道包名(package name),那么可以使用如下的方法: Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address"); startActi

  • Android APP启动方式、启动流程及启动优化分析

    本文章向大家介绍Android app应用启动的一些相关知识,包括app启动方式.app启动流程和app启动优化等知识!  app应用启动方式 1.冷启动 当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动.冷启动因为系统会重新创建一个新的进程分配给它,所以会先创建和初始化Application类,再创建和初始化MainActivity类(包括一系列的测量.布局.绘制),最后显示在界面上. 2.热启动 当启动应用时,后台已有该应用的进程(例:按

  • Android中Okhttp3实现上传多张图片同时传递参数

    之前上传图片都是直接将图片转化为io流传给服务器,没有用框架传图片. 最近做项目,打算换个方法上传图片. Android发展到现在,Okhttp显得越来越重要,所以,这次我选择用Okhttp上传图片. Okhttp目前已经更新到Okhttp3版本了,用法跟之前相比,也有一些差别.在网上找了很多资料, 并和java后台同事反复调试,终于成功上传多张图片,同时传递一些键值对参数. 以下是我对该过程的封装: private static final MediaType MEDIA_TYPE_PNG =

  • Android中通过外部程序启动App的三种方法

    第一种:直接通过包名: 复制代码 代码如下: Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.joyodream.jiji");                 startActivity(LaunchIntent); 第二种:通过自定义的Action 复制代码 代码如下: Intent intent = new Intent();                 intent.setAc

  • Android Activity之间相互调用与传递参数的原理与用法分析

    本文实例讲述了Android Activity之间的相互调用与传递参数.分享给大家供大家参考,具体如下: Activity之间是如何调用的 在javaWeb程序中,jsp与jsp之间的调用是通过重定向完成的,而在Android中,Activity与Activity之间的切换是通过Intent来完成的. 所谓Intent,它是Android中非常重要的内置组件,他可以理解为"我要干一件什么事情".在Android中有3大组件:Activity,Service.Broadcast,他们之间

随机推荐