移动开发技术(Android)——实验3 Android常用基本控件(一)

一、实验目的

二、实验内容

创建一个Android项目,项目名称为”shiyan0301_信息登记_学生姓名”,要求:

  • 界面构成:7个文本框分别用于显示学生学号、姓名、性别,出生年月、专业班级、电子邮箱和登记信息;6个编辑框,分别用于输入学生学号、姓名、性别,出生年月、专业班级、电子邮箱;两个普通按钮”登记”和”重置”。
  • 程序功能
    ①单击”登记”按钮时,将用户输入的信息显示在一个登记信息文本框中;
    ②单击”重置”按钮时,清空编辑框中输入的信息。
布局xml代码.......................................

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity"
    android:columnCount="3">

    <TextView
        android:id="@+id/num_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="学号" />
    <EditText
        android:id="@+id/num_ET"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/name_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="姓名" />
    <EditText
        android:id="@+id/name_ET"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/sex_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="性别" />
    <EditText
        android:id="@+id/sex_EV"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/birthday_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="出生年月" />
    <EditText
        android:id="@+id/birthday_EV"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/class_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="专业班级" />
    <EditText
        android:id="@+id/class_EV"
       android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/mail_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="电子邮箱" />
    <EditText
        android:id="@+id/mail_EV"
        android:layout_columnSpan="2"
        android:autoLink="email"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>

    <TextView
        android:id="@+id/information_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="登记信息" />
    <EditText
        android:id="@+id/information_EV"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal"
        android:layout_height="wrap_content"/>
    <Button
        android:id="@+id/register_BT"
        android:text="登记"
        android:layout_width="wrap_content"/>
    <Button
        android:id="@+id/request_BT"
        android:text="重置"
        android:layout_width="wrap_content"/>
GridLayout>
JAVA代码.......................................

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {

    EditText num,name,sex,birthday,department,mail,information;
    Button register,request;
    String String_num,String_name,String_sex,String_birthday,String_department,String_mail,String_information;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        num=(EditText) findViewById(R.id.num_ET);
        name=(EditText) findViewById(R.id.name_ET);
        sex=(EditText) findViewById(R.id.sex_EV);
        birthday=(EditText) findViewById(R.id.birthday_EV);
        department=(EditText) findViewById(R.id.class_EV);
        mail=(EditText) findViewById(R.id.mail_EV);
        information=(EditText) findViewById(R.id.information_EV);

        register=(Button) findViewById(R.id.register_BT);
        request=(Button) findViewById(R.id.request_BT);

        register.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                String_num=num.getText().toString();
                String_name=name.getText().toString();
                String_sex=sex.getText().toString();
                String_birthday=birthday.getText().toString();
                String_department=department.getText().toString();
                String_mail=mail.getText().toString();

                information.setText(String_num+" "+String_name+" "+String_sex+" "+String_birthday+" "+String_department+" "+String_mail);
            }
        });

        request.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                num.setText("");
                name.setText("");
                sex.setText("");
                birthday.setText("");
                department.setText("");
                mail.setText("");
                information.setText("");
            }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

创建一个Android项目,项目名称为”shiyan0302_用户登录_学生姓名”,要求:

  • 界面构成:2个文本框,分别用来显示”用户名:”、”密码:”;2个编辑框,分别用来输入用户名和密码信息,要求密码不能以明文方式显示;1个普通按钮”登录”。
  • 程序功能:单击”登录”按钮时,应实现以下功能:
    ①判断用户名和密码输入不为空,若为空,则给出Toast提示信息;
    ②若用户名为学生自己的姓名,且密码为学生学号,则给出Toast提示信息”登录成功!”
    ③若用户名不是学生自己的姓名,或密码不是学生自己的学号,则给出Toast提示信息”用户名或密码错误”,并将编辑框清空。
    ④若输入错误次数超过3次,则退出程序。(提示,使用finish()方法)
布局xml代码.......................................

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="fill"
    android:columnCount="2"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:stretchColumns="1"
    tools:context=".MainActivity" >

    <TableRow>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="用户名" />
        <EditText
            android:id="@+id/userName_ET"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    TableRow>

    <TableRow>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="密    码" />
        <EditText
            android:id="@+id/passWord_ET"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPassword" />
    TableRow>

    <Button
        android:id="@+id/login_BT"
        android:text="登录" />

    <TextView
        android:text="用户名:180000,密码:0302"
        android:textSize="20sp" />

TableLayout>
JAVA代码.......................................

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

    EditText userName,passWord;
    Button login;
    String userName_St,passWord_St;
    int num=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        userName=(EditText) findViewById(R.id.userName_ET);
        passWord=(EditText) findViewById(R.id.passWord_ET);
        login=(Button) findViewById(R.id.login_BT);

        login.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                num++;
                userName_St=userName.getText().toString();
                passWord_St=passWord.getText().toString();

                if(userName_St.isEmpty()||passWord_St.isEmpty()){
                    Toast toast = Toast.makeText(MainActivity.this, "用户名或密码不能为空", Toast.LENGTH_SHORT);
                    toast.show();
                    if(num>3){
                        num=0;
                        finish();
                    }
                }else if(userName_St.equals("180000")&&passWord_St.equals("0302")){
                    Toast toast = Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_SHORT);
                    toast.show();
                    num=0;

                }else{
                    Toast toast = Toast.makeText(MainActivity.this, "用户名或密码错误", Toast.LENGTH_SHORT);
                    toast.show();
                    if(num>3){
                        num=0;
                        finish();
                    }
                }
            }
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

创建一个Android项目,项目名称为”shiyan0303_简易计算器_学生姓名”,要求:

  • 界面构成:3个文本框,分别用来显示”运算数一”、”运算数二”、”计算结果”;2个编辑框,分别用来输入两个运算数;4个普通按钮”加”、”减”、”乘”、”除”。
  • 程序功能:单击”加”、”减”、”乘”、”除”按钮时,实现两个运算数的相应数学运算,并将结果显示在”计算结果”文本框中。
布局xml代码.......................................

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:columnCount="2"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/num1_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="运算数一" />

    <EditText
        android:id="@+id/num1_ET"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/num2_TV"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="运算数二" />

    <EditText
        android:id="@+id/num2_ET"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/outcome_TV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_columnSpan="2"
        android:gravity="center_horizontal"
        android:text="计算结果"
        android:textSize="25dp" />

    <Button
        android:id="@+id/add_BT"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="加" />

    <Button
        android:id="@+id/sub_BT"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="减" />

    <Button
        android:id="@+id/mul_BT"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="乘" />

    <Button
        android:id="@+id/div_BT"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="除" />

GridLayout>
JAVA代码.......................................

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

    TextView outcome;
    EditText num1,num2;
    Button add,sub,mul,div;
    double d1,d2;
    String num11,num22;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        num1=(EditText) findViewById(R.id.num1_ET);
        num2=(EditText) findViewById(R.id.num2_ET);
        outcome=(TextView) findViewById(R.id.outcome_TV);
        add=(Button) findViewById(R.id.add_BT);
        sub=(Button) findViewById(R.id.sub_BT);
        mul=(Button) findViewById(R.id.mul_BT);
        div=(Button) findViewById(R.id.div_BT);

        add.setOnClickListener(new OnListener());
        sub.setOnClickListener(new OnListener());
        mul.setOnClickListener(new OnListener());
        div.setOnClickListener(new OnListener());

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    class OnListener implements OnClickListener{

        @Override
        public void onClick(View v) {

            num11=num1.getText().toString();

            d1 = Double.parseDouble(num11);
            num22=num2.getText().toString();
            d2 = Double.parseDouble(num22);

            if(v.getId()==R.id.add_BT){
                double all=d1+d2;
                outcome.setText(all+"");
            }else if(v.getId()==R.id.sub_BT){
                double all=d1-d2;
                outcome.setText(all+"");
            }else if(v.getId()==R.id.mul_BT){
                double all=d1*d2;
                outcome.setText(all+"");
            }else if(v.getId()==R.id.div_BT){
                double all=d1/d2;
                outcome.setText(all+"");
            }else{

            }
        }
    }
}

创建一个Android项目,项目名称为”shiyan0304_三角形_学生姓名”,要求:

  • 界面构成:3个文本框,分别用来显示”边A”、”边B”、”边C”;3个编辑框,分别用来输入三角形的三边;3个普通按钮”计算周长”、”计算面积”、”重置”。
  • 程序功能
    ①单击”计算周长”按钮时,将三角形的周长显示在Toast提示中;
    ②单击”计算面积”按钮时,将三角形的周长显示在Toast提示中;
    ③单击”重置”按钮,清空编辑框中输入的信息。
布局xml代码.......................................

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:columnCount="3"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|center_horizontal"
        android:text="边A" />

    <EditText
        android:id="@+id/A"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|center_horizontal"
        android:text="边B" />

    <EditText
        android:id="@+id/B"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|center_horizontal"
        android:text="边C" />

    <EditText
        android:id="@+id/C"
        android:layout_columnSpan="2"
        android:layout_gravity="fill_horizontal" />

    <Button
        android:id="@+id/reset"
        android:layout_width="wrap_content"
        android:onClick="resetClick"
        android:text="重置" />

    <Button
        android:id="@+id/circumference"
        android:layout_width="wrap_content"
        android:onClick="circumferenceClick"
        android:text="计算周长" />

    <Button
        android:id="@+id/area"
        android:layout_width="wrap_content"
        android:onClick="areaClick"
        android:text="计算面积" />

GridLayout>
JAVA代码.......................................

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

    EditText A,B,C;
    Button reset,circumference,area;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        A=(EditText) findViewById(R.id.A);
        B=(EditText) findViewById(R.id.B);
        C=(EditText) findViewById(R.id.C);
        reset=(Button) findViewById(R.id.reset);
        circumference=(Button) findViewById(R.id.circumference);
        area=(Button) findViewById(R.id.area);
    }

    public void resetClick(View view){
        A.setText("");
        B.setText("");
        C.setText("");
        Toast toast = Toast.makeText(MainActivity.this,"已清空", Toast.LENGTH_SHORT);
        toast.show();
    }

    public void circumferenceClick(View view){
        String sideA=A.getText().toString();
        String sideB=B.getText().toString();
        String sideC=C.getText().toString();

        double sA=Double.parseDouble(sideA);
        double sB=Double.parseDouble(sideB);
        double sC=Double.parseDouble(sideC);

        Toast toast = Toast.makeText(MainActivity.this,sA+sB+sC+"", Toast.LENGTH_SHORT);
        toast.show();
    }

    public void areaClick(View view){
        String sideA=A.getText().toString();
        String sideB=B.getText().toString();
        String sideC=C.getText().toString();

        double sA=Double.parseDouble(sideA);
        double sB=Double.parseDouble(sideB);
        double sC=Double.parseDouble(sideC);

        double p=(sA+sB+sC)/2;
        double s=Math.sqrt(p*(p-sA)*(p-sB)*(p-sC));

        Toast toast = Toast.makeText(MainActivity.this,s+"", Toast.LENGTH_SHORT);
        toast.show();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

Original: https://blog.csdn.net/weixin_44652589/article/details/120090957
Author: 阿轩同学
Title: 移动开发技术(Android)——实验3 Android常用基本控件(一)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/816863/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球