• 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);     
        }  

    接收成功:

     传递之后接收参数并显示实例>>

  • 相关阅读:
    Debug和Release区别
    C语言程序_管理系统
    读书的学问
    御姐的含义
    进制的英文书写
    CHM文件无法打开的解决方法
    819代码
    点击链接不跳转或刷新
    MS SqlServer 随机查询并随机排序
    Html背景图
  • 原文地址:https://www.cnblogs.com/tinyphp/p/3840257.html
Copyright © 2020-2023  润新知