一、实验目的
掌握TextView、Button、EditText、ImageView、RadioButton、checkbox的基本使用方式,设计实现注册页面。
二、实验内容
练习TextView、Button、EditText、ImageView、RadioButton、checkbox的基本属性及常用方法,设计并实现注册页面。
三、实验指导
1.新建工程创建新的布局文件。
2.在布局文件中根据自己设计放置TextView、Button、EditText、ImageView、RadioButton、checkbox等控件,设计注册页面。
3.编码实现注册页面,点击注册页面注册按钮将所填信息(自己的学号、姓名)及所选择的信息(可以是自己的兴趣爱好等)使用TextView显示出来。
四、模拟器效果截图
五、实验源代码
package com.example.myapplication02;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class Register extends AppCompatActivity {
Button bt;
private RadioGroup radioGroup;
private RadioButton current;
private CompoundButton cp_current;
private CheckBox box1,box2,box3,box4;
private TextView T_numb;
private TextView T_name;
private TextView T_sex;
private TextView T_like;
private String cp_currstr="";
private String cp_result="";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register);
bt=findViewById(R.id.bt);
T_numb=findViewById(R.id.numb);
T_name=findViewById(R.id.name);
radioGroup=findViewById(R.id.gp);
T_sex=findViewById(R.id.T_sex);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String number = "";
number = T_numb.getText().toString();
T_numb=findViewById(R.id.T_numb);
String lname = "";
lname = T_name.getText().toString();
T_name=findViewById(R.id.T_name);
Toast.makeText(Register.this, number, Toast.LENGTH_SHORT).show();
Toast.makeText(Register.this, lname, Toast.LENGTH_SHORT).show();
T_numb.setText("学号:"+number);
T_name.setText("姓名:"+lname);
T_sex.setText("性别:"+current.getText().toString());
T_like.setText("爱好:"+cp_result);
}
});
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int checkedid) {
current=findViewById(checkedid);
//Toast.makeText(Register.this, current.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
box1=findViewById(R.id.box1);
box2=findViewById(R.id.box2);
box3=findViewById(R.id.box3);
box4=findViewById(R.id.box4);
T_like=findViewById(R.id.T_like);
Mylistener mylistener = new Mylistener();
box1.setOnCheckedChangeListener(mylistener);
box2.setOnCheckedChangeListener(mylistener);
box3.setOnCheckedChangeListener(mylistener);
box4.setOnCheckedChangeListener(mylistener);
}
class Mylistener implements CompoundButton.OnCheckedChangeListener{
@Override
public void onCheckedChanged(CompoundButton compoundButton,boolean ischecked){
cp_currstr=compoundButton.getText().toString();
if(ischecked){
if(!cp_result.contains(cp_currstr)){
cp_result=cp_result+cp_currstr;
}
}else {
if(!cp_result.contains(cp_currstr)){
cp_result=cp_result.replace(cp_currstr,"");
}
}
}
}
}
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"
android:background="@drawable/green"
xmlns:tools="http://schemas.android.com/tools">
<!--输入学号-->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
tools:layout_editor_absoluteY="0dp"
tools:layout_editor_absoluteX="8dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:textSize="30dp"
android:textColor="@android:color/background_dark"
android:text="学号"/>
<EditText
android:id="@+id/numb"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="请输入您的学号:"/>
<!--姓名-->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
tools:layout_editor_absoluteY="0dp"
tools:layout_editor_absoluteX="8dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:textSize="30dp"
android:textColor="@android:color/background_dark"
android:text="姓名"/>
<EditText
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="60dp"
android:hint="请输入您的姓名:"/>
<!--性别-->
<RadioGroup
android:id="@+id/gp"
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal">
<RadioButton
android:id="@+id/sex1"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="男"/>
<RadioButton
android:id="@+id/sex2"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="女"/>
</RadioGroup>
<!--爱好-->
<LinearLayout
android:id="@+id/cpbox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<CheckBox
android:id="@+id/box1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="读书"/>
<CheckBox
android:id="@+id/box2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="打球"/>
<CheckBox
android:id="@+id/box3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="睡觉"/>
<CheckBox
android:id="@+id/box4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:text="听歌"/>
</LinearLayout>
<Button
android:id="@+id/bt"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="#3F51B5"
android:textColor="#FFFFFF"
android:textSize="18sp"
android:text="注册">
</Button>
<TextView
android:id="@+id/T_numb"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textColor="@android:color/background_dark" />
<TextView
android:id="@+id/T_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textColor="@android:color/background_dark" />
<TextView
android:id="@+id/T_sex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textColor="@android:color/background_dark" />
<TextView
android:id="@+id/T_like"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textColor="@android:color/background_dark" />
</LinearLayout>