zoukankan      html  css  js  c++  java
  • 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>
    

      效果图如下:

  • 相关阅读:
    SVN服务器搭建(一)
    排序算法二:冒泡排序
    【LeetCode】136. Single Number
    【LeetCode】217. Contains Duplicate
    【LeetCode】189. Rotate Array
    【LeetCode】122. Best Time to Buy and Sell Stock II
    【LeetCode】26. Remove Duplicates from Sorted Array
    【LeetCode】20. Valid Parentheses
    【LeetCode】680. Valid Palindrome II
    【LeetCode】345. Reverse Vowels of a String
  • 原文地址:https://www.cnblogs.com/Sunnor/p/4731564.html
Copyright © 2011-2022 走看看