Android计算器设计实验报告

这篇具有很好参考价值的文章主要介绍了Android计算器设计实验报告。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、实验目的:

       熟悉Android稍微复杂的逻辑编程,应用网格布局设计一个简单Android计算器界面并能实现加减和清零等功能。

二、实验设备:

       1.PC机

       2.Windows操作系统

       3.Android Studio

三、实验原理简述:

       TableLayout是一种可以制作表格的布局,它和GridLayout的区别是GridLayout只能制定每一列宽度一样的表格布局,而TableLayout能够制定各列宽度不一样的表格布局。

3.1  TableLayout的主要属性

       android:collapseColumns=”0,1” 隐藏第0列和第1列

       android:stretchColumns=”0,1” 第0列和第1列可以向行方向扩展

       android:stretchColumns=”*” 所有列可以向行方向扩展

       android:shrinkColumns=”0,1” 第0列和第1列可以向列方向扩展

3.2  TableRow子控件的主要属性:

       android:layout_column=”1” 该控件显示在第1列

       android:layout_span=”2” 该控件占据2列

注意:TableLayout里面的子控件可以为TableRow或者其他View,但是其子控件的android:layout_width属性被系统固定为match_parent,TableLayout里面所有行中某一列的宽度的最大值是这一列的宽度。

四、实验数据记录及数据处理:

       在Android Studio新建一个工程,在Palette中选择TableLayout、TableRow、textView和button添加到Component Tree中,并修改主从关系及其id、text和textSIZE。如下图所示:

Android计算器设计实验报告

 

Android计算器设计实验报告

Android计算器设计实验报告

        编写程序,核心代码如下(部分功能省略):

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    private TextView txtView;
    private Button btn_n0;
    private Button btn_n1;
    private Button btn_n2;
    private Button btn_n3;
    private Button btn_n4;
    private Button btn_n5;
    private Button btn_n6;
    private Button btn_n7;
    private Button btn_n8;
    private Button btn_n9;
    private Button btn_add;
    private Button btn_sub;
    private Button btn_div;
    private Button btn_mix;
    private Button btn_res;
    private Button btn_c;
    private Button btn_del;
    private Button btn_p;
    private Button btn_pct;
    private Button btn_dot;

    int opflag;
    double kk,kk_add,kk_sub;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        txtView=findViewById(R.id.textView);
        btn_n0=findViewById(R.id.button_n0);
        btn_n1=findViewById(R.id.button_n1);
        btn_n2=findViewById(R.id.button_n2);
        btn_n3=findViewById(R.id.button_n3);
        btn_n4=findViewById(R.id.button_n4);
        btn_n5=findViewById(R.id.button_n5);
        btn_n6=findViewById(R.id.button_n6);
        btn_n7=findViewById(R.id.button_n7);
        btn_n8=findViewById(R.id.button_n8);
        btn_n9=findViewById(R.id.button_n9);
        btn_add=findViewById(R.id.button_add);
        btn_sub=findViewById(R.id.button_sub);
        btn_div=findViewById(R.id.button_div);
        btn_mix=findViewById(R.id.button_mix);
        btn_res=findViewById(R.id.button_res);
        btn_c=findViewById(R.id.button_c);
        btn_del=findViewById(R.id.button_del);
        btn_p=findViewById(R.id.button_p);
        btn_pct=findViewById(R.id.button_pct);
        btn_dot=findViewById(R.id.button_dot);

        btn_n0.setOnClickListener(clickListener);
        btn_n1.setOnClickListener(clickListener);
        btn_n2.setOnClickListener(clickListener);
        btn_n3.setOnClickListener(clickListener);
        btn_n4.setOnClickListener(clickListener);
        btn_n5.setOnClickListener(clickListener);
        btn_n6.setOnClickListener(clickListener);
        btn_n7.setOnClickListener(clickListener);
        btn_n8.setOnClickListener(clickListener);
        btn_n9.setOnClickListener(clickListener);
        btn_add.setOnClickListener(clickListener);
        btn_sub.setOnClickListener(clickListener);
        btn_div.setOnClickListener(clickListener);
        btn_mix.setOnClickListener(clickListener);
        btn_res.setOnClickListener(clickListener);
        btn_dot.setOnClickListener(clickListener);
        btn_pct.setOnClickListener(clickListener);
        btn_p.setOnClickListener(clickListener);
        btn_c.setOnClickListener(clickListener);
        btn_del.setOnClickListener(clickListener);

        kk=0;
        opflag=0;
    }
    public View.OnClickListener clickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.button_n0:
                    kk=kk*10+0;
                    break;
                case R.id.button_n1:
                    kk=kk*10+1;
                    break;
                case R.id.button_n2:
                    kk=kk*10+2;
                    break;
                case R.id.button_n3:
                    kk=kk*10+3;
                    break;
                case R.id.button_n4:
                    kk=kk*10+4;
                    break;
                case R.id.button_n5:
                    kk=kk*10+5;
                    break;
                case R.id.button_n6:
                    kk=kk*10+6;
                    break;
                case R.id.button_n7:
                    kk=kk*10+7;
                    break;
                case R.id.button_n8:
                    kk=kk*10+8;
                    break;
                case R.id.button_n9:
                    kk=kk*10+9;
                    break;
                case R.id.button_c:
                    kk=0;
                    break;
                case R.id.button_add:
                    kk_add=kk;
                    kk_sub=0;
                    kk=0;
                    opflag=1;
                    break;
                case R.id.button_sub:
                    kk_add=0;
                    kk_sub=kk;
                    kk=0;
                    opflag=-1;
                    break;
                case R.id.button_res:
                    kk=(kk+kk_add-kk_sub)*opflag;
                    break;
                default:
                    break;
            }
            txtView.setText(String.valueOf(kk));
        }
    };
}

五、实验结果分析:

       下图为Android计算器设计图及APP模拟编译图,可实现基本功能:

Android计算器设计实验报告

Android计算器设计实验报告

体会:此次实验我熟悉了Android稍微复杂的逻辑编程,一步步做实验的过程也感受到了理论课上无法感受到的东西。开发过程中遇到的不会的问题在网上也有对应的解决办法,最终将计算器设计出来及成功运行也感受到了Android开发的强大魅力。 

(如有侵权,请联系删除!文章中若有错误欢迎在评论区指出!)文章来源地址https://www.toymoban.com/news/detail-485811.html

到了这里,关于Android计算器设计实验报告的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机组成原理实验——实验1 运算器实验

    (1)掌握算术逻辑运算单元的工作原理。 (2)熟悉简单运算器的电路组成。 (3)熟悉4位运算功能发生器(74LS181)的算术、逻辑运算功能。 (1)做好实验预习,看懂电路图,熟悉实验中所用芯片各引脚的功能和连接方法。 (2)按照实验内容与步骤的要求,认真仔细地完

    2024年02月12日
    浏览(41)
  • 大学物理实验不确定度计算器

    大物实验计算不确定度纯属牛马行为,本人在某次大物实验之后,面对众多数据,直接破防,索性一劳永逸,编程解决这种重复,不需要脑子的过程。 使用python写了一个不确定度计算器,输入数据个数和数据以及B类不确定度,程序会计算所有的步骤,并且将关键信息打印出

    2024年02月07日
    浏览(121)
  • Android计算器实现

    这个项目是一个简单的计算器应用,它可以执行加、减、乘、除四种基本运算等计算器的基本功能。我们将使用Android Studio作为开发工具。 1. 在Android Studio中创建新的Android项目。 2. 在布局文件(`activity_main.xml`)中,我们将添加一个按钮和一个用于显示结果的文本视图。 3. 在

    2024年02月07日
    浏览(38)
  • Android——在线计算器完整代码

      这里采用线性布局,关于计算器的布局,可以查看之前的文章。 1.创建每个按钮的对象 2.实例化每个按钮 通过每个按钮的id进行实例化创建 3.设置每个按钮的点击事件即监听按钮 switch通过id判断被点击的按钮属于哪个控件。如果是数字或小数点,setText(str + ((Button) view).get

    2023年04月24日
    浏览(54)
  • 【Android Studio】简易计算器

    简易计算器要求: 1,操作简单,易于掌握,界面简单。 2.方便进行加,减,乘,除等操作。数字保留小数点后两位。 3.包含小数点运算和输入回退功能。 4.能够进行多次叠加运算。 5.系统能够进行多次叠加运算。 6.系统可以稳定运行。 功能图如下: 逻辑流程图如下: 项目建

    2024年02月08日
    浏览(43)
  • Android 实战项目:简单计算器

    虽然只学了一些Android的简单控件,但是只要活学善用这些布局和控件,也能够做出实用的App。 接下来让我们尝试设计并实现一个简单计算器。 Windows计算器,它主要由上半部分的计算结果与下半部分的计算按钮两块区域组成,据此可创建一个界面相似的计算器App,同样由计算

    2024年02月03日
    浏览(51)
  • Android Studio简易计算器

    目录 第一步,创建新项目 第二步,设计UI 第三步,实现计算逻辑 第四步,测试应用程序 随着移动互联网的普及,手机应用程序已经成为人们生活中不可或缺的一部分。计算器是一类被广泛使用的应用程序之一,因此学习如何开发一款简易的计算器应用程序是学习Android Stu

    2024年02月08日
    浏览(35)
  • 计算机组成与结构实验一《运算器组成》

    一、实验目的与要求 一、实验目的 (1)熟悉TEC-8模型计算机的节拍脉冲T1T2T3 (2)熟悉TEC-8模型机双端口通用寄存器组的读写操作 (3)熟悉TEC-8模型机运算器的数据传送通路 (4)验证74181的加、减、与、或功能 (5)按给定的数据,完成几种指定的算术运算和逻辑运算 二、

    2024年02月04日
    浏览(45)
  • Proteus仿真--12864LCD显示计算器键盘按键实验(仿真文件+程序)

    本文主要介绍基于51单片机的12864LCD液晶显示电话拨号键盘按键实验(完整仿真源文件及代码见文末链接) 仿真图如下 本设计主要介绍计算器键盘仿真,按键按下后在12864液晶上显示对应按键键值 仿真运行视频 Proteus仿真--12864LCD显示计算器键盘按键实验 附完整Proteus仿真资料

    2024年02月06日
    浏览(38)
  • 【Android】控件与布局入门 - 简易计算器

    目录 1. 基础开发环境 2. 计算器的布局和相关按钮 3. 计算器的主要运算逻辑 4. APK 文件 5. 项目源码 JDK:JDK17 Android Studio:Android Studio Giraffe | 2022.3.1 Android SDK:Android API 34 Gradle: gradle-8.0-bin.zip 使用 LinearLayout 和 GridLayout 实现计算器的交互前端。 layout 文件如下 相关 values 如下:

    2024年02月14日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包