要求:
编写一个数据传递的小程序,要求在第一个界面输入姓名和生日,在第二个界面上显示“XX(姓名)您好,您的星座是XX座”;在第二个界面上点击按钮返回,第一个界面上也能够显示“您的星座是XX座”。
代码实现:
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="数据传递小程序"
android:textColor="#98EFFF"
android:textSize="30sp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" 姓 名:"
android:textColor="#ff0899"
android:textSize="20sp" />
<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的姓名" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:weightSum="1"
android:id="@+id/linearLayout2"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="出生日期:"
android:textColor="#77e000"
android:textSize="20dp" />
<EditText
android:id="@+id/et_birthday_month"
android:layout_width="43dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:hint="01"
android:textColor="#000000"
android:textSize="25dp"
android:textStyle="italic" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="月"
android:textSize="20dp"
android:textColor="#000000"/>
<EditText
android:id="@+id/et_birthday_day"
android:layout_width="43dp"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:hint="01"
android:textColor="#000000"
android:textSize="25dp"
android:textStyle="italic"/>
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="日"
android:textSize="20dp"
android:textColor="#000000"/>
</LinearLayout>
<Button
android:id="@+id/btn_test"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:text="测 试"
android:gravity="center"
android:textSize="25dp"
android:layout_below="@+id/linearLayout2"
android:layout_centerHorizontal="true"/>
<TextView
android:id="@+id/tv_result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_margin="50dp"
android:layout_marginLeft="80dp"
android:layout_below="@+id/test"
android:textSize="20dp"
android:textColor="#034969"/>
</LinearLayout>
activity_test_success.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_selection"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ebebeb"
android:gravity="center_horizontal"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:id="@+id/tv_in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000000"
android:textSize="20dp" />
<Button
android:id="@+id/btn_return"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tv_in"
android:layout_marginTop="10dp"
android:textSize="20sp"
android:onClick="return"
android:text="返 回"
android:textAllCaps="false" />
</RelativeLayout>
MainActivity.java:
package com.example.**********.constellationtransfer;
import android.content.Intent;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private EditText et_birthday_month;
private EditText et_birthday_day;
private EditText et_name;
private Button btn_test;
private TextView tv_result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_birthday_month = (EditText) findViewById(R.id.et_birthday_month);
et_birthday_day = (EditText) findViewById(R.id.et_birthday_day);
et_name = (EditText) findViewById(R.id.et_name);
tv_result = (TextView) findViewById(R.id.tv_result);
btn_test = (Button) findViewById(R.id.btn_test);
btn_test.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String Name =et_name .getText().toString().trim();
String month = et_birthday_month.getText().toString().trim();
String day=et_birthday_day.getText().toString().trim();
if (!TextUtils.isEmpty(Name) && !TextUtils.isEmpty(Name)) {
Intent intent = new Intent(MainActivity.this, TestSuccessActivity.class);
intent.putExtra("name", Name);
intent.putExtra("month",month);
intent.putExtra("day",day);
startActivity(intent);
}
}
});
String Result = getIntent().getStringExtra("result");
tv_result.setText(Result);
}
}
TestSuccessActivity.java:
package com.example.**********.constellationtransfer;
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;
import android.widget.TextView;
import java.util.jar.Attributes;
public class TestSuccessActivity extends AppCompatActivity {
private Button btn_return;
private TextView tv_in;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_success);
btn_return = (Button) findViewById(R.id.btn_return);
btn_return.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(TestSuccessActivity.this,MainActivity.class);
String Result=tv_in.getText().toString().trim();
intent.putExtra("result",Result);
startActivity(intent);
}
});
tv_in = (TextView) findViewById(R.id.tv_in);
Intent intent = getIntent();
String name = intent.getStringExtra("name");
String month = intent.getStringExtra("month");
String day=intent.getStringExtra("day");
String r = "20";
String y = "21";
String u = "22";
String u1 = "23";
String u2 = "24";
int i = day.compareTo(r);
int er = day.compareTo(y);
int san = day.compareTo(u);
int si = day.compareTo(u1);
int wu = day.compareTo(u2);
if (month.equals("01")) {
if (er >= 0) {
tv_in.setText(name + " 您好,您的星座是:水瓶座");
} else {
tv_in.setText(name + " 您好,您的星座是:摩羯座");
}
}
if (month.equals("02")) {
if (i >= 0) {
tv_in.setText(name + " 您好,您的星座是:双鱼座");
} else {
tv_in.setText(name + " 您好,您的星座是:水瓶座");
}
}
if (month.equals("03")) {
if (er >= 0) {
tv_in.setText(name + " 您好,您的星座是:白羊座");
} else {
tv_in.setText(name + " 您好,您的星座是:双鱼座");
}
}
if (month.equals("04")) {
if (er >= 0) {
tv_in.setText(name + " 您好,您的星座是:金牛座");
} else {
tv_in.setText(name + " 您好,您的星座是:白羊座");
}
}
if (month.equals("05")) {
if (san >= 0) {
tv_in.setText(name + " 您好,您的星座是:双子座");
} else {
tv_in.setText(name + " 您好,您的星座是:金牛座");
}
}
if (month.equals("06")) {
if (san >= 0) {
tv_in.setText(name + " 您好,您的星座是:巨蟹座");
} else {
tv_in.setText(name + " 您好,您的星座是:双子座");
}
}
if (month.equals("07")) {
if (si >= 0) {
tv_in.setText(name + " 您好,您的星座是:狮子座");
} else {
tv_in.setText(name + " 您好,您的星座是:巨蟹座");
}
}
if (month.equals("08")) {
if (wu >= 0) {
tv_in.setText(name + " 您好,您的星座是:处女座");
} else {
tv_in.setText(name + " 您好,您的星座是:狮子座");
}
}
if (month.equals("09")) {
if (wu >= 0) {
tv_in.setText(name + " 您好,您的星座是:天枰座");
} else {
tv_in.setText(name + " 您好,您的星座是:处女座");
}
}
if (month.equals("10")) {
if (wu >= 0) {
tv_in.setText(name + " 您好,您的星座是:天蝎座");
} else {
tv_in.setText(name + " 您好,您的星座是:天秤座");
}
}
if (month.equals("11")) {
if (si >= 0) {
tv_in.setText(name + " 您好,您的星座是:射手座");
} else {
tv_in.setText(name + " 您好,您的星座是:天蝎座");
}
}
if (month.equals("12")) {
if (si >= 0) {
tv_in.setText(name + " 您好,您的星座是:摩羯座");
} else {
tv_in.setText(name + " 您好,您的星座是:射手座");
}
}
}
}
运行结果显示: