MainActivity:
package com.example.lab1;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.widget.Toast;
import com.example.lab1.R;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
private ArrayList<CheckBox> favs;
private EditText userName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
userName = (EditText) findViewById(R.id.name);
favs = new ArrayList<CheckBox>();
CheckBox book = findViewById(R.id.book);
CheckBox sport = findViewById(R.id.sport);
CheckBox music = findViewById(R.id.music);
CheckBox movie = findViewById(R.id.movie);
favs.add(book);
favs.add(sport);
favs.add(music);
favs.add(movie);
}
public String getSex(){
RadioGroup sex = findViewById(R.id.sex);
RadioButton radioButton = (RadioButton) findViewById(sex.getCheckedRadioButtonId());
return radioButton.getText().toString();
}
public String getFavorite() {
String favo="";
for(CheckBox cb:favs) {
if(cb.isChecked()) {
favo += cb.getText().toString();
favo += ",";
}
}
if(!"".equals(favo))
favo=favo.substring (0, favo.length()-1);
else
favo="您未选择爱好!";
return favo;
}
public void myClick(View view) {
if(check()==1) {
StringBuilder sb=new StringBuilder () ;
sb.append("用户名:"+ userName.getText().toString()+"\n");
sb.append("性别:"+getSex()+"\n");
EditText tel = findViewById(R.id.tel);
sb.append("电话:"+tel.getText().toString()+"\n");
Spinner dept = (Spinner) findViewById(R.id.dept);
sb.append("部门:"+dept.getSelectedItem().toString()+"\n") ;
sb.append("爱好:"+getFavorite());
Toast.makeText(this, sb.toString(), Toast.LENGTH_LONG).show();
Intent intent = new Intent();//将注册信息提交到ResultActivity页面
intent.setClass(MainActivity.this, ResultActivity.class);
intent.putExtra("info", sb.toString());
MainActivity.this.startActivity(intent) ;
} else {
userName.setError("用户名不能为空");
}
}
//判断用户名是否为空; 0为空,1不为空
private int check() {
String name = userName.getText().toString();
if(name.isEmpty()) {
//Toast.makeText(MainActivity.this,"用户名不能为空",Toast.LENGTH_SHORT).show();
return 0;
}
return 1;
}
}
MainActivity.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
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:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名"
android:textSize="20dp"
/>
<EditText
android:id="@+id/name"
android:layout_width="400dp"
android:layout_height="50dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密码"
android:textSize="20dp"
/>
<EditText
android:id="@+id/password"
android:layout_width="400dp"
android:layout_height="50dp"
android:inputType="textPassword"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="性别"
android:textSize="20dp"
/>
<RadioGroup
android:id="@+id/sex"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="50dp"
android:id="@+id/man"
android:text="男"
android:checked="true"
android:textSize="20dp"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="50dp"
android:id="@+id/woman"
android:text="女"
android:textSize="20dp"/>
</RadioGroup>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="联系电话"
android:textSize="20dp"
/>
<EditText
android:id="@+id/tel"
android:layout_width="400sp"
android:layout_height="wrap_content"
android:inputType="text|phone"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="部门"
android:textSize="20dp"
/>
<Spinner
android:id="@+id/dept"
android:layout_width="400dp"
android:layout_height="50dp"
android:entries="@array/dept"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="爱好"
android:textSize="20dp"
/>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:orientation="horizontal">
<CheckBox
android:id="@+id/book"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="书籍"
android:textSize="20dp"/>
<CheckBox
android:id="@+id/sport"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="运动"
android:textSize="20dp"/>
<CheckBox
android:id="@+id/music"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="音乐"
android:textSize="20dp"/>
<CheckBox
android:id="@+id/movie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="电影"
android:textSize="20dp"/>
</LinearLayout>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="确定"
android:onClick="myClick"
/>
</LinearLayout>
ResultActivity:
package com.example.lab1;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.view.Window;
import android.widget.TextView;
public class ResultActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_result);
TextView result = (TextView) findViewById(R.id.result);
result.setText("从前一个页面传过来的内容如下:\n\n"+this.getIntent().getStringExtra("info"));
}
}
ResultActivity.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ResultActivity">
<TextView
android:id="@+id/result"
android:layout_width="400dp"
android:layout_height="350dp"
android:text="TextView"
android:textSize="20dp"/>
</LinearLayout>