计算器的功能介绍:
Name: Dot (从某点开始,到某点结束)
功能: + 、- 、* 、/ 、%
(清零,退格操作)
版本:1.0
Dot 的效果展示:
侃侃 Dot:
Dot 与其他的计算器相比没有太大的竞争力,甚至在处理一些极端的问题时还存在很大的不足,
例如:大数的四则运算,对于这个问题处理的还不够到位,目前只能实现一些简单的四则运算
(只能说自己的水平太菜,还没有掌握一些实质性的内容,这个是自己需要检讨的)
另外:
非常感谢 Android 老师教给我们的知识,使我们可以设计出第一款属于自己的 app.
改进的地方:
相对于最原始的设计,更新了哪些东西呢?
1、改变按钮的形状,由原始的长方形 -- 椭圆状,使得按钮更加形象化。
2、增加背景图片,使用户的体验效果更好。
3、增加退格操作,使得用户在输错信息时不用全盘清零,可以删除刚刚写的某个字符。
不足的地方:
1、未实现一些大数的运算。
2、当退格退完后,再按退格时会自动退出(不影响总体效果,但还是有那么一点 bug)
3、目前两个数操作就需要 '=' 一下,但是可以实现多项式的运算,只是每次都需要 '='
(后续会进行修改,逐渐完善)
补充知识:
android 中的事件处理步骤
a、找到事件目标对象(Button),通过 findViewById(),遍历子对象。
b、实现view.onClickLisenter接口,重写 onClick 方法。
c、在事件目标对象上注册,btn.setOnClickListener(实现类的对象)
如何将信息显示到 View(EditText)上:
a、为 EditText 定义 id -- etResult
b、通过 findViewById 获取 etResult 对象
c、通过 etResult.setText() 将信息显示到计算器界面上
异常的类型:
a、RuntimeException
运行时异常,不要求处理(但最好处理一下),与业务相关,比较主观(每个应用都可以采用
自己的方式进行处理),一般不严重, 对效果不会产生太大的影响。
b、Checked Exception:
检查异常,必须处理,非业务类型的错误,比较客观,比较严重,会影响程序的执行。
代码部分:
calculate_layout.xml:
在 layout 里面新建一个文件calculate_layout.xml(布局类型是 GridLayout)
android:layout_width="match_parent" android:layout_height="match_parent"
android:rowCount="6"
android:columnCount="1"
android:orientation="horizontal"
android:id="@+id/gridlayout"
android:background="@mipmap/bg">
android:id="@+id/edResult"
android:background="#2FC6CAC2"
android:textColor="#3949AB"
android:textColorHint="#3949AB"
android:layout_gravity="fill_horizontal"
android:gravity="right"
android:paddingBottom="24dp"
android:paddingTop="24dp"
android:textSize="30sp"
/>
android:text="AC"
android:textSize="20sp"
android:textColor="#E61111"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginTop="8dp"
android:background="@drawable/yuanbtn"
/>
android:text="Del"
android:textSize="20sp"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_mar