Android两个android两个activity之间相互传递数据
2016-11-21 10:33
645 查看
这个案例是书上的习题,我发生来了一点改变而已
xml:
这是第一个xml,很简单的两个tv和ed加一个btn
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="sorgs.com.datepass.MainActivity">
<LinearLayout
android:id="@+id/regisrt_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="22dp"
android:orientation="horizontal">
<TextView
android:layout_width="80dp"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="5dp"
android:text="用户名:"/>
<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的姓名"
android:textSize="14dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/regisrt_userage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/regisrt_username"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="5dp"
android:orientation="horizontal">
<TextView
android:layout_width="80dp"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="5dp"
android:text="用户名:"/>
<EditText
android:id="@+id/et_age"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的年龄"
android:textSize="14dp"/>
</LinearLayout>
<Button
android:id="@+id/btn_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/regisrt_userage"
android:layout_centerHorizontal="true"
android:layout_marginTop="24dp"
android:text="发送"/>
</RelativeLayout>
再来看看第二个,就显示第一个页面传过来的数据
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="恭喜您,"
android:textSize="20dp"/>
<TextView
android:id="@+id/tv_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="来到这个世界:"
android:textSize="20dp"/>
<TextView
android:id="@+id/tv_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"/>
</LinearLayout>
<Button
android:id="@+id/btn_return"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/text"
android:layout_centerHorizontal="true"
android:layout_marginTop="24dp"
android:text="返回"/>
</RelativeLayout>
接下来就是java的代码
package sorgs.com.datepass;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private Button btn1;
private EditText etname;
private EditText etage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button) findViewById(R.id.btn_send);
etage = (EditText) findViewById(R.id.et_age);
etname = (EditText) findViewById(R.id.et_name);
btn1.setOnClickListener(new View.OnClickListener() { //用户点击按钮提交数据
@Override
public void onClick(View view) {
pssDate();
}
});
}
public void pssDate(){
Intent intent = new Intent(this,MainActivity2.class);//创建Intent对象,启动MainActivity2
intent.putExtra("name",etname.getText().toString().trim()); //将数据存入Intent对象
intent.putExtra("age",etage.getText().toString().trim());
startActivity(intent);
finish();
}
}
然后就是第二个页面的java了
package sorgs.com.datepass;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
/**
* Created by Administrator on 2016/11/20.
*/
public class MainActivity2 extends Activity {
private TextView tv1;
private TextView tv2;
private Button btn2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_date);
tv1 = (TextView) findViewById(R.id.tv_1);
tv2 = (TextView) findViewById(R.id.tv_2);
btn2 = (Button) findViewById(R.id.btn_return);
Intent intent1 = getIntent();//获取Intent对象
//取出对key中的值
String name = intent1.getStringExtra("name");
String age = intent1.getStringExtra("age");
//设置到对的控件中
tv1.setText(name + "!");
tv2.setText(age + "年。");
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
updata();
}
});
}
private void updata() {
Intent intent2 = new Intent(this,MainActivity.class);
startActivity(intent2);
finish();
}
}
第二个页面做了一个跳转回第一个页面的处理
最后一定记得在配置里面配置一下
![](http://img.blog.csdn.net/20161121103240121)
来看看效果
![](http://img.blog.csdn.net/20161121103259809)
xml:
这是第一个xml,很简单的两个tv和ed加一个btn
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="sorgs.com.datepass.MainActivity">
<LinearLayout
android:id="@+id/regisrt_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="22dp"
android:orientation="horizontal">
<TextView
android:layout_width="80dp"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="5dp"
android:text="用户名:"/>
<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的姓名"
android:textSize="14dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/regisrt_userage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/regisrt_username"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="5dp"
android:orientation="horizontal">
<TextView
android:layout_width="80dp"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="5dp"
android:text="用户名:"/>
<EditText
android:id="@+id/et_age"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的年龄"
android:textSize="14dp"/>
</LinearLayout>
<Button
android:id="@+id/btn_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/regisrt_userage"
android:layout_centerHorizontal="true"
android:layout_marginTop="24dp"
android:text="发送"/>
</RelativeLayout>
再来看看第二个,就显示第一个页面传过来的数据
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="恭喜您,"
android:textSize="20dp"/>
<TextView
android:id="@+id/tv_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="来到这个世界:"
android:textSize="20dp"/>
<TextView
android:id="@+id/tv_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"/>
</LinearLayout>
<Button
android:id="@+id/btn_return"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/text"
android:layout_centerHorizontal="true"
android:layout_marginTop="24dp"
android:text="返回"/>
</RelativeLayout>
接下来就是java的代码
package sorgs.com.datepass;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private Button btn1;
private EditText etname;
private EditText etage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button) findViewById(R.id.btn_send);
etage = (EditText) findViewById(R.id.et_age);
etname = (EditText) findViewById(R.id.et_name);
btn1.setOnClickListener(new View.OnClickListener() { //用户点击按钮提交数据
@Override
public void onClick(View view) {
pssDate();
}
});
}
public void pssDate(){
Intent intent = new Intent(this,MainActivity2.class);//创建Intent对象,启动MainActivity2
intent.putExtra("name",etname.getText().toString().trim()); //将数据存入Intent对象
intent.putExtra("age",etage.getText().toString().trim());
startActivity(intent);
finish();
}
}
然后就是第二个页面的java了
package sorgs.com.datepass;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
/**
* Created by Administrator on 2016/11/20.
*/
public class MainActivity2 extends Activity {
private TextView tv1;
private TextView tv2;
private Button btn2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_date);
tv1 = (TextView) findViewById(R.id.tv_1);
tv2 = (TextView) findViewById(R.id.tv_2);
btn2 = (Button) findViewById(R.id.btn_return);
Intent intent1 = getIntent();//获取Intent对象
//取出对key中的值
String name = intent1.getStringExtra("name");
String age = intent1.getStringExtra("age");
//设置到对的控件中
tv1.setText(name + "!");
tv2.setText(age + "年。");
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
updata();
}
});
}
private void updata() {
Intent intent2 = new Intent(this,MainActivity.class);
startActivity(intent2);
finish();
}
}
第二个页面做了一个跳转回第一个页面的处理
最后一定记得在配置里面配置一下
来看看效果
相关文章推荐
- Android两个android两个activity之间相互传递数据之装备选择(书上案例)
- Android中两个Activity之间数据传递及返回
- Android中两个Activity之间数据传递及返回
- Android中两个Activity之间数据传递及返回
- Android成长之路-关于bundle实现两个activity之间的数据传递
- Android中两个Activity之间数据传递及返回
- Android 在两个 Activity 之间传递数据
- Android中两个Activity之间数据传递及返回
- Android中在两个Activity之间进行数据传递
- 两个Activity之间通过Intent相互(双向)传递数据
- Android之两个activity之间传递数据且有返回值
- Android 在两个 Activity 之间传递数据
- Android 两个Activity之间传递数据及返回
- Android消息机制之实现两个不同线程之间相互传递数据相互调用
- Android成长之路-关于bundle实现两个activity之间的数据传递
- Android中两个Activity之间数据传递及返回
- Android中两个Activity之间数据传递及返回
- Android中两个Activity之间数据传递及返回问题
- 3. 调用另一个Activity,并两个Activity之间相互传递数据
- Android中两个Activity之间数据传递及返回