欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Intent数据传递

程序员文章站 2022-03-03 19:48:37
...

Intent数据传递

一个简单的利用Intent数据传递,仅供参考。


注意:
1.创建两个XML文件和JAVA文件
2.在JAVA里面获取布局文件
3.在第一个布局文件里面创建输入的EditText
4.在第二个布局文件里面创建获取显示的TextView
5.在AndroidManifest.xml加入创建的第二个Java文件
6.写第一个Java代码
7.在第二个Java代码里面获取创建的第一个Intent 打包数据


这里写代码片
第一个页面代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >
    <TextView 
        android:id="@+id/tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:textSize="25sp"
        android:gravity="center"
        android:text="请依次输入你的信息"
        />
    <EditText 
        android:id="@+id/ed_1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入姓名"
        />
    <EditText 
        android:id="@+id/ed_2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入联系方式"
        />
    <EditText 
        android:id="@+id/ed_3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入邮编"
        />
    <EditText 
        android:id="@+id/ed_4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入详细地址"
        />
    <Button 
        android:id="@+id/bt"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:text="点击进入"
        />


</LinearLayout>
这里写代码片
Java代码
package com.arrj.ninefruit;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //1.获取布局文件
        setContentView(R.layout.activity_main);
        //2.获取控件 创建对象
        TextView tv = (TextView) findViewById(R.id.tv);
        final EditText ed_1 = (EditText) findViewById(R.id.ed_1);
        final EditText ed_2 = (EditText) findViewById(R.id.ed_2);
        final EditText ed_3 = (EditText) findViewById(R.id.ed_3);
        final EditText ed_4 = (EditText) findViewById(R.id.ed_4);
        Button bt = (Button) findViewById(R.id.bt);
        //3.获取点击对象
        bt.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                //3.1 获取输入的数据
                String s1 = ed_1.getText().toString();
                String s2 = ed_2.getText().toString();
                String s3 = ed_3.getText().toString();
                String s4 = ed_4.getText().toString();
                //4.创建意图
                Intent intent = new Intent();
                //4.1 跳转页面
                intent.setClass(MainActivity.this,main_twojava.class);
                //4.2数据打包
                intent.putExtra("ed1", s1);
                intent.putExtra("ed2", s2);
                intent.putExtra("ed3", s3);
                intent.putExtra("ed4", s4);
                //4.3启动意图
                startActivity(intent);              
            }
        });        
    }   
}
这里写代码片
第二个页面代码
<?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" >
    <TextView 
        android:id="@+id/tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:textSize="25sp"
        android:gravity="center"
        android:text="你输入的信息是如下"
        />
    <TextView 
        android:id="@+id/tv1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        />
    <TextView 
        android:id="@+id/tv2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        />
    <TextView 
        android:id="@+id/tv3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        />
    <TextView 
        android:id="@+id/tv4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""
        />


</LinearLayout>
这里写代码片
Java代码
package com.arrj.ninefruit;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class main_twojava extends Activity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        //1.获取布局文件
        setContentView(R.layout.main_two);
        //2.创建对象 获取控件
        TextView tv1 = (TextView) findViewById(R.id.tv1);
        TextView tv2 = (TextView) findViewById(R.id.tv2);
        TextView tv3 = (TextView) findViewById(R.id.tv3);
        TextView tv4 = (TextView) findViewById(R.id.tv4);
        //3.创建意图 这里是获取之前创建过的intent 用get获取
        Intent intent = getIntent();
        //4.获取意图打包数据
        String edtv1 = intent.getStringExtra("ed1");
        String edtv2 = intent.getStringExtra("ed2");
        String edtv3 = intent.getStringExtra("ed3");
        String edtv4 = intent.getStringExtra("ed4");
        //5.更新文本框的输入信息
        tv1.setText("你的姓名是:" + edtv1);
        tv2.setText("你的联系方式是:" + edtv2);
        tv3.setText("你的邮编是:" + edtv3);
        tv4.setText("你的详细地址是:" + edtv4);

    }

}
相关标签: 数据