查看: 1868|回复: 0

[Android教程] Android中Activity之间跳转和参数传递的实例

发表于 2017-8-6 08:53:55
尚学堂AD

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

一、学习创建Activity

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

2、需要复写onCreate()

例子:

  1. package com.example.testsend;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. public class MainActivity2 extends Activity{
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.newtest);
  9. }
  10. }
复制代码

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

  1. <activity android:name="com.example.testsend.MainActivity2">
  2. </activity>
复制代码

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

二、Activity之间的通信

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

  1. <Button
  2. android:id="@+id/btnOpen"
  3. android:layout_width="wrap_content"
  4. android:layout_height="wrap_content"
  5. android:text="打开新页面"
  6. android:onClick="OpenNew"
  7. />
复制代码

点击按钮触发的方法:

MainActivity.java设置方法

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

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

MainActivity.java传递参数

  1. public void OpenNew(View v){
  2. //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
  3. Intent intent =new Intent(MainActivity.this,MainActivity2.class);
  4. //用Bundle携带数据
  5. Bundle bundle=new Bundle();
  6. //传递name参数为tinyphp
  7. bundle.putString("name", "tinyphp");
  8. intent.putExtras(bundle);
  9. startActivity(intent);
  10. }
复制代码

MainActivity2.java接收参数

  1. protected void onCreate(Bundle savedInstanceState) {
  2. super.onCreate(savedInstanceState);
  3. setContentView(R.layout.newtest);
  4. //新页面接收数据
  5. Bundle bundle = this.getIntent().getExtras();
  6. //接收name值
  7. String name = bundle.getString("name");
  8. Log.i("获取到的name值为",name);
  9. }
复制代码

接收成功:

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

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



回复

使用道具 举报