文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android实现院系专业三级联动

2024-04-02 19:55

关注

Android实现院系专业三级联动,供大家参考,具体内容如下

设计一个注册页面

注册项:用户名、密码、学号、性别、爱好、学院、系、专业。

具体要求如下

1、学号只能输入数字
2、密码框要隐藏,8-24位之间
3、性别用单选框,默认选中男
4、爱好用多选框,默认选中第二个选项
5、院、系和专业选择使用下拉列表框(先院,后系、最后专业。要求院系专业之间是联动的,例如:选中了计算机学院,第二个系列表框里只能有该学院的几个系,选中了某一个系,第三个专业列表框里只能有该系对应的专业)
6、点击注册按钮,在TextView中显示所有注册信息,同时用Toast显示所有注册信息

效果图:

点击注册按钮,在TextView中显示所有注册信息,同时用Toast显示所有注册信息

activity_main.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"
 android:gravity="center"
 tools:context=".MainActivity">
 <ScrollView
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:scrollbars="none">
 <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:orientation="vertical">
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="用户名"
   android:textSize="18dp"
   android:background="#E91E63"
   android:padding="8dp"
   />
  <EditText
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/edt1"
   android:hint="请输入用户名"
   />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="密码"
   android:textSize="18dp"
   android:background="#E91E63"
   android:padding="8dp"
   />
  <EditText
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/edt2"
   android:hint="请输入密码"
   android:inputType="numberPassword"
   />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="学号"
   android:textSize="18dp"
   android:background="#E91E63"
   android:padding="8dp"
   />
  <EditText
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/edt3"
   android:hint="请输入学号"
   android:inputType="number"
   />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="性别"
   android:textSize="18dp"
   />
  <RadioGroup
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/rg1"
   android:orientation="vertical">
   <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/rb1"
   android:text="男"
   android:checked="true"
   />
   <RadioButton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/rb2"
   android:text="女"
   />
  </RadioGroup>
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="爱好"
   android:textSize="18dp"
   android:layout_marginLeft="30dp"
   />
  <LinearLayout
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:orientation="vertical"
   >
   <CheckBox
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="唱歌"
   android:id="@+id/cb1"
   />
   <CheckBox
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="跳舞"
   android:checked="true"
   android:id="@+id/cb2"
   />
   <CheckBox
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="书法"
   android:id="@+id/cb3"
   />
  </LinearLayout>
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">

  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="学院"
   android:textSize="18dp"
   android:background="#4CAF50"
   android:padding="8dp"

   />

  <Spinner
   android:id="@+id/sp1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content" />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="系"
   android:textSize="18dp"
   android:background="#4CAF50"
   android:padding="8dp"
   />

  <Spinner
   android:id="@+id/sp2"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content" />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="专业"
   android:textSize="18dp"
   android:background="#4CAF50"
   android:padding="8dp" />

  <Spinner
   android:id="@+id/sp3"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content" />
  </LinearLayout>
  <LinearLayout
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <Button
   android:id="@+id/btn1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="注册" />
  <Button
   android:id="@+id/btn2"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="取消" />
  </LinearLayout>
  <TextView
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:id="@+id/id1"
  android:gravity="center"
  android:background="@color/colorAccent"/>
  <TextView
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:id="@+id/id2"
  android:gravity="center"
  android:background="#FFEB3B"/>
  <TextView
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:id="@+id/id3"
  android:gravity="center"
  android:background="#71BFE3"/>
 </LinearLayout>
 </ScrollView>
</LinearLayout>

代码:


package com.example.test;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.provider.MediaStore;
import android.text.method.ScrollingMovementMethod;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
 Spinner sp1,sp2,sp3;
 Button btn1;
 EditText edt1,edt2,edt3;
 RadioGroup rg1;
 CheckBox cb1,cb2,cb3;
 TextView id1,id2,id3;
 static int index;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 final String []college={"数学与统计学院","化学材料与工程","轻工科学技术学院","电商与物流学院","生态环境学院","计算机学院"};
 final String [][]depart=
  {
   {"公共数学系","应用统计系","经济统计系","数学与应用数学系"},
   {"化学系","材料科学与工程系","化妆品系"},
   {"应用化学系","生物工程系"},
   {"物流管理系","信息管理系"},
   {"环境科学与工程系"},
   {"计算机系"}
  };
 final String [][][]major=
  {
   {{"信息与计算科学"},{"应用统计学"},{"经济统计学"},{"数据科学与大数据技术"}},
   {{"化学技术与工程"},{"高分子材料与工程","功能材料"},{"化妆品技术与工程"}},
   {{"化学"},{"生物工程"}},
   {{"物流管理","供应链管理"},{"电子商务","信息管理与信息系统"}},
   {{"环境科学与工程"}},
   {{"计算机科学与技术","软件工程","物联网工程"}}
  };
 ArrayAdapter<String> colAdapter=new ArrayAdapter<String>(this,R.layout.support_simple_spinner_dropdown_item,college);
 ArrayAdapter<String> depAdapter=new ArrayAdapter<String>(this,R.layout.support_simple_spinner_dropdown_item,depart[0]);
 ArrayAdapter<String> morAdapter=new ArrayAdapter<String>(this,R.layout.support_simple_spinner_dropdown_item,major[0][0]);
 edt1=(EditText)findViewById(R.id.edt1);
 edt2=(EditText)findViewById(R.id.edt2);
 edt3=(EditText)findViewById(R.id.edt3);
 rg1=(RadioGroup) findViewById(R.id.rg1);
 cb1=(CheckBox)findViewById(R.id.cb1);
 cb2=(CheckBox)findViewById(R.id.cb2);
 cb3=(CheckBox)findViewById(R.id.cb3);
 sp1=(Spinner)findViewById(R.id.sp1);
 sp2=(Spinner)findViewById(R.id.sp2);
 sp3=(Spinner)findViewById(R.id.sp3);
 btn1=(Button)findViewById(R.id.btn1);
 id1=(TextView)findViewById(R.id.id1);
 id2=(TextView)findViewById(R.id.id2);
 id3=(TextView)findViewById(R.id.id3);
 sp1.setAdapter(colAdapter);
 sp1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
  @Override
  public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
  index=position;
  ArrayAdapter<String> depAdapter=new ArrayAdapter<String>(MainActivity.this,R.layout.support_simple_spinner_dropdown_item,depart[position]);
  sp2.setAdapter(depAdapter);
  }

  @Override
  public void onNothingSelected(AdapterView<?> parent) {

  }
 });
 sp2.setAdapter(depAdapter);
 sp2.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
  @Override
  public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
  ArrayAdapter<String> morAdapter=new ArrayAdapter<String>(MainActivity.this,R.layout.support_simple_spinner_dropdown_item,major[index][position]);
  sp3.setAdapter(morAdapter);
  }

  @Override
  public void onNothingSelected(AdapterView<?> parent) {

  }
 });
 btn1.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View v) {
  String likes=" ";
  String name=edt1.getText().toString();
  String password=edt2.getText().toString();
  String num=edt3.getText().toString();
  String str1="用户名:"+name+"\n"+"密码:"+password+"\n"+"学号:"+num;
  String str2=" ";
  if(password.length()<8||password.length()>24)
  {
   Toast.makeText(MainActivity.this,"密码需8-24位",Toast.LENGTH_SHORT).show();
  }
  else{
   id1.setText(str1);
  }
  for(int i=0;i<rg1.getChildCount();i++)
  {
   RadioButton r=(RadioButton)rg1.getChildAt(i);
   if(r.isChecked())
   {
   str2="性别:"+r.getText().toString();
   id2.setText(str2);
   break;
   }
  }
  if(cb1.isChecked())
  {
   likes=likes+cb1.getText().toString();
  }
  if(cb2.isChecked())
  {
   likes=likes+cb2.getText().toString();
  }
  if(cb3.isChecked())
  {
   likes=likes+cb3.getText().toString();
  }
  String str3="爱好:"+likes+"\n"+"学院:"+sp1.getSelectedItem().toString()+"\n"+"系:"+sp2.getSelectedItem().toString()+"\n"+"专业:"+sp3.getSelectedItem().toString();
  Toast.makeText(MainActivity.this,str1+"\n"+str2+"\n"+str3,Toast.LENGTH_SHORT).show();
  id3.setText(str3);
  }
 });
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯