Android开发实验-UI控件及事件响应

一、实验目的

  1. 熟悉Android Studio开发工具使用

  2. 理解事件监听方法

  3. 能根据常用控件设计的APP应用程序

二、实验任务

  1. 常用控件应用
  2. 事件监听应用
  3. Spinner控件应用

三、实验环境

        PC机、Android Studio

四、实验内容

(一)、常用控件应用

编写程序,实现如下功能:

      设计一个用户登录的App,模拟用户通过账号或邮箱地址进行登录,并判断用户账号及密码是否正确,并给出相应的登录提示。登录界面提供账号,密码及登录类型的输入,单击登录按钮后,后台根据用户选择的类型,进行账号或邮件地址进行登录验证,并给出相关的登录提示。

假设后台的账号和密码是固定的,如:

内置账号:zhangsan  内置密码:123456

内置账号:[email protected]  内置密码:12345678

 要求:(1).使用hint属性;(2).使用Toast提示登录结果

Android开发实验-UI控件及事件响应_第1张图片

代码部分:

【MainActivity】
 public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        final EditText nametext = findViewById(R.id.name);
        final EditText emailtext = findViewById(R.id.email);
        final EditText password = findViewById(R.id.password);

        Button button = (Button) findViewById(R.id.skip);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this, SecondActivity.class);

                if(String.valueOf(nametext.getText()).equals("zhangsan")&&String.valueOf(password.getText()).equals("123456")){
                    Toast login=Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_LONG);
                    login.setGravity(Gravity.CENTER,0,0);
                    login.show();
                    startActivity(intent);
                }
                if(String.valueOf(emailtext.getText()).equals("[email protected]")&&String.valueOf(password.getText()).equals("12345678")){
                    Toast login=Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_LONG);
                    login.setGravity(Gravity.CENTER,0,0);
                    login.show();
                    startActivity(intent);
                }
                else{
                    Toast login=Toast.makeText(MainActivity.this,"登录失败",Toast.LENGTH_LONG);
                    login.setGravity(Gravity.CENTER,0,0);
                    login.show();
                }
            }
        });

        final RadioButton name = findViewById(R.id.nameButton);
        final RadioButton email = findViewById(R.id.emalButton);

        RadioGroup group = findViewById(R.id.radioGroup);
        
        group.setOnCheckedChangeListener(
                new RadioGroup.OnCheckedChangeListener() {
                    @Override
                    public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
                        if (checkedId == R.id.nameButton){
                            nametext.setVisibility(View.VISIBLE);
                            emailtext.setVisibility(View.INVISIBLE);
                            
                        }else if (checkedId == R.id.emalButton){
                            emailtext.setVisibility(View.VISIBLE);
                            nametext.setVisibility(View.INVISIBLE);
                        }
                    }
                });
    }
}



【activity_main.xml】




运行结果:

Android开发实验-UI控件及事件响应_第2张图片Android开发实验-UI控件及事件响应_第3张图片

(二)、事件监听应用

编写程序,实现如下功能:

      设计一个应用程序,包含1个EditText,1个TextView,1个Button。在EditText输入框中输入银行卡号,输入的同时用较大字体四个一组分隔在TextView显示出来。点击清空button时,所有数据清空。

  1. 要求:(1)使用OnKeyListener监听;
  2. (2)监听到响应事件类型KeyEvent为KeyEvent.ACTION_UP才分割显示;
  3. Android开发实验-UI控件及事件响应_第4张图片

代码部分:

【activity_second.xml】

运行结果:

Android开发实验-UI控件及事件响应_第5张图片Android开发实验-UI控件及事件响应_第6张图片

(三)、Spinner控件应用

编写程序,实现如下功能:

        UI界面由1个EditText、2个按钮、1个Spinner控件组成。当用户EditText中输入内容,点击“添加”按钮,能够将其动态添加到Spinner中;当用户在Spinner列表中点击某项时,选项文本内容显示在EditText中, 如果点击“删除”按钮,能够将该项从Spinner项中删除。为Spinner添加事件,使用Toast显示选择内容

Android开发实验-UI控件及事件响应_第7张图片

代码部分:

【activity_third.xml】




运行结果:

Android开发实验-UI控件及事件响应_第8张图片Android开发实验-UI控件及事件响应_第9张图片Android开发实验-UI控件及事件响应_第10张图片

你可能感兴趣的:(Android开发学习,java,android-studio,android,android,studio)