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

作者:tinyphp 时间:2023-01-31 21:40:32 

一个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);  
 }

接收成功:

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

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

来源:http://www.cnblogs.com/tinyphp/p/3840257.html

标签:activity,传递参数
0
投稿

猜你喜欢

  • C#记一次http协议multipart/form-data的boundary问题

    2021-07-01 17:45:49
  • VSCODE+cmake配置C++开发环境的实现步骤

    2023-05-31 21:25:14
  • springboot结合maven实现多模块打包

    2022-01-16 07:13:51
  • C#队列Queue多线程用法实例

    2023-03-09 20:12:09
  • Android Mms之:对话与联系人关联的总结详解

    2023-12-06 13:12:57
  • springboot中PostMapping正常接收json参数后返回404问题

    2021-07-22 20:46:28
  • windows下java -jar 后台运行以及杀死后台进程的操作

    2022-02-09 17:28:13
  • java中找不到符号的解决方案

    2023-09-01 17:50:11
  • Java SpringBoot实现AOP

    2023-05-31 05:49:30
  • C#和vb.net实现PDF 添加可视化和不可见数字签名

    2022-08-01 12:49:02
  • 通过C#调用cmd来修改服务启动类型

    2022-01-02 04:25:46
  • Java Character类的详解

    2022-09-20 00:55:01
  • C#实现文件与字符串互转的方法详解

    2023-04-26 03:18:12
  • MyBatis-Plus实现分页的方法使用详解

    2023-02-14 18:22:16
  • C# 爬虫简单教程

    2022-04-24 14:10:53
  • springboot 动态数据源的实现方法(Mybatis+Druid)

    2021-07-26 04:27:00
  • JavaWeb动态导出Excel可弹出下载

    2021-11-21 11:12:12
  • Java使用自动化部署工具Gradle中的任务设定教程

    2022-08-09 12:13:31
  • Android开发使用strings.xml多语言翻译解决方案

    2023-06-27 14:19:24
  • 快速学习c# 枚举

    2022-07-19 18:12:12
  • asp之家 软件编程 m.aspxhome.com