13
2018
08

Android的activity跳转

本例中MainActivity为:FirstActivity.java

FirstActivity如下:

package com.wyl.intentmultiactivitytest;

 

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

 

public class FirstActivity extends Activity {

    //

    Button btn01;

    Button btn02;

    EditText et;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.firstctivity);// 绑定页面

        btn01 = (Button) findViewById(R.id.button1);

        btn02 = (Button) findViewById(R.id.button2);

        et = (EditText)findViewById(R.id.editText1);

        btn01.setOnClickListener(new OnClickListener() {

         

            @Override

            public void onClick(View v) {

                // TODO Auto-generated method stub

                // 1.上下文对象,Context

                // 2.目标文件

                Intent intent = new Intent(FirstActivity.this,

                        SecondActivity.class);

                System.out.println("======kaishi :====");

                startActivity(intent);// 实现跳转到第二个页面

 

            }

        });

        btn02.setOnClickListener(new OnClickListener() {

 

            @Override

            public void onClick(View v) {

                // TODO Auto-generated method stub

                // 1.上下文对象,Context

                // 2.目标文件

                Intent intent = new Intent(FirstActivity.this,

                        SecondActivity.class);

                System.out.println("======第一个页面的第二种跳转kaishi :====");

                startActivityForResult(intent, 1);;// 实现跳转到第二个页面

 

            }

        });

    }

 

    @Override

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        // TODO Auto-generated method stub

        super.onActivityResult(requestCode, resultCode, data);

        if(requestCode==1&&resultCode==2){

            String plnr1 = data.getStringExtra("plnr");

            String plnr2 = data.getExtras().getString("plnr");

            System.out.println("==========:"+plnr1+",plnr2:"+plnr2);

            et.setText("data.getStringExtra('plnr1')"+plnr1+",plnr2 = data.getExtras().getString('plnr')的方式"+plnr2);

        }

    }

}

SecondActivity:

package com.wyl.intentmultiactivitytest;

 

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

 

public class SecondActivity extends Activity {

    Button btn01;

    Button btn02;

    EditText et;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        // TODO Auto-generated method stub

        super.onCreate(savedInstanceState);

        setContentView(R.layout.second_activity);// 绑定页面

        System.out.println("=====wo shi the second yemian =====");

        btn01 = (Button) findViewById(R.id.button21);

        btn02 = (Button) findViewById(R.id.button22);

        et = (EditText)findViewById(R.id.editText01);

        btn01.setOnClickListener(new OnClickListener() {

         

            @Override

            public void onClick(View v) {

                // TODO Auto-generated method stub

                Intent intent = new Intent(SecondActivity.this, FirstActivity.class);

                System.out.println("==cong dier tiaodao diyiye==");

                startActivity(intent);

            }

        });

        btn02.setOnClickListener(new OnClickListener() {

             

            @Override

            public void onClick(View v) {

                // TODO Auto-generated method stub

                Intent intent = new Intent();

                String content = et.getText().toString();//获取评论的内容

                intent.putExtra("plnr", content);

                 

                //2是状态码,随便自己设置,用来判断是哪个页面的返回值,自己不弄混了就行

                setResult(2, intent);   //这是最关键的一步,

                Toast.makeText(SecondActivity.this, intent.getExtras().getString("plnr"),1000);

                finish();//关闭该页面,就会自动返回到了第一页了。

            }

        });

         

    }

}

相关的layout文件:

firstctivity.xml:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical" >

 

    <Button

        android:id="@+id/button1"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="new Intent(context,目标activity.class),startActivity(intent)方式跳转" />

 

    <Button

        android:id="@+id/button2"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="第二种方式跳转" />

 

    <EditText

        android:id="@+id/editText1"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:ems="10"

        android:hint="我只是个提示框框而已">

 

        <requestFocus />

    </EditText>

 

</LinearLayout>

second_activity.xml:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical" >

 

    <EditText

        android:id="@+id/editText01"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:hint="录入要返回到第一页的内容" />

    <Button

        android:id="@+id/button21"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="我是第二个activity页面" />

    <Button

        android:id="@+id/button22"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="startActivityForResult方式返回,并且回传数据" />

</LinearLayout>



效果图如下:



原文链接:https://www.qiquanji.com/post/8453.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

gzh

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。