制作⼀个简易计算器——基于AndroidStudio实现
⼀个计算器Android程序的源码部分分为主⼲和细节两部分。
⼀、主⼲
1. 主⼲的构成
计算器的布局
事件(即计算器上的按钮、⽂本框)监听
实现计算
2. 详细解释
假设我们的项⽬名为Calculator,⽽布局名称(Layout Name)为默认的activity_main 。即设置如下图所⽰:
在这种前提下,有:
设置计算器布局的⽂件:Calculator/app/src/main/res/layout/l
事件监听和计算实现在同⼀个⽂件⾥:Calculator/app/src/main/java/下的⼀个⼦⽬录⾥的MainActivity.java
即如下图所⽰:
计算器布局代码(写在l⽂件⾥):
1<?xml version="1.0" encoding="utf-8"?>
2<ScrollView xmlns:android="schemas.android/apk/res/android"
3 android:layout_width="fill_parent"
4 android:layout_height="wrap_content"
5>
6<LinearLayout
7android:layout_width="fill_parent"
8 android:layout_height="fill_parent"
9 android:orientation="vertical">
10<EditText
11android:id="@+id/input"
12 android:layout_width="fill_parent"
13 android:layout_height="wrap_content"
14 android:layout_gravity="center"
15 android:editable="false"
16 android:hint="@string/shuru"/>
17
18<EditText
19android:id="@+id/output"
20 android:layout_width="fill_parent"
21 android:layout_height="wrap_content"
22 android:layout_gravity="center"
23 android:editable="true"
24 android:gravity="right"
25 android:hint="@string/shuchu"/>
26
27<RelativeLayout
28android:layout_width="fill_parent"
29 android:layout_height="wrap_content">
30
31<Button
32android:id="@+id/seven"
33 android:layout_width="80dp"
34 android:layout_height="70dp"
35 android:layout_alignParentLeft="true"
36 android:text="@string/seven"
37 android:textSize="40sp"/>
38
39<Button
40android:id="@+id/eight"
41 android:layout_width="80dp"
42 android:layout_height="70dp"
43 android:layout_toRightOf="@id/seven"
44 android:text="@string/eight"
45 android:textSize="40sp"/>
46
47<Button
48android:id="@+id/nine"
49 android:layout_width="80dp"
50 android:layout_height="70dp"
51 android:layout_toRightOf="@id/eight"
52 android:text="@string/nine"
53 android:textSize="40sp"/>
54
55<Button
56android:id="@+id/add"
57 android:layout_width="80dp"
58 android:layout_height="70dp"
59 android:layout_alignParentRight="true"
60 android:layout_toRightOf="@id/nine"
61 android:text="@string/add"
62 android:textSize="40sp"/>
63
64<Button
65android:id="@+id/four"
66 android:layout_width="80dp"
67 android:layout_height="70dp"
68 android:layout_alignParentLeft="true"
69 android:layout_below="@id/seven"
70 android:text="@string/four"
71 android:textSize="40sp"/>
72
73<Button
74android:id="@+id/five"
75 android:layout_width="80dp"
76 android:layout_height="70dp"
77 android:layout_below="@id/eight"
78 android:layout_toRightOf="@id/four"
79 android:text="@string/five"
80 android:textSize="40sp"/>
81
82<Button
83android:id="@+id/six"
84 android:layout_width="80dp"
85 android:layout_height="70dp"
86 android:layout_below="@id/nine"
87 android:layout_toRightOf="@id/five"
88 android:text="@string/six"
89 android:textSize="40sp"/>
90
91<Button
92android:id="@+id/subtract"
93 android:layout_width="80dp"
94 android:layout_height="70dp"
95 android:layout_alignParentRight="true"
96 android:layout_below="@id/add"
97 android:layout_toRightOf="@id/six"
98 android:text="@string/subtract"
99 android:textSize="40sp"/>
100
101<Button
102android:id="@+id/one"
103 android:layout_width="80dp"
104 android:layout_height="70dp"
105 android:layout_alignParentLeft="true" 106 android:layout_below="@id/four"
107 android:text="@string/one"
108 android:textSize="40sp"/>
109
vb计算器代码大全
110<Button
111android:id="@+id/two"
112 android:layout_width="80dp"
113 android:layout_height="70dp"
114 android:layout_below="@id/five"
115 android:layout_toRightOf="@id/one" 116 android:text="@string/two"
117 android:textSize="40sp"/>
118
119<Button
120android:id="@+id/three"
121 android:layout_width="80dp"
122 android:layout_height="70dp"
123 android:layout_below="@id/six"
124 android:layout_toRightOf="@id/two" 125 android:text="@string/three"
126 android:textSize="40sp"/>
127
128<Button
129android:id="@+id/multiply"
130 android:layout_width="80dp"
131 android:layout_height="70dp"
132 android:layout_alignParentRight="true" 133 android:layout_below="@id/subtract" 134 android:layout_toRightOf="@id/three" 135 android:text="@string/multiply"
136 android:textSize="40sp"/>
137
138<Button
139android:id="@+id/zero"
140 android:layout_width="80dp"
141 android:layout_height="70dp"
142 android:layout_alignParentLeft="true" 143 android:layout_below="@id/one"
144 android:text="@string/zero"
145 android:textSize="40sp"/>
146
147<Button
148android:id="@+id/clear"
149 android:layout_width="80dp"
150 android:layout_height="70dp"
151 android:layout_below="@id/two"
152 android:layout_toRightOf="@id/zero" 153 android:text="@string/clear"
154 android:textSize="40sp"/>
155
156<Button
157android:id="@+id/result"
158 android:layout_width="80dp"
159 android:layout_height="70dp"
160 android:layout_below="@id/three"
161 android:layout_toRightOf="@id/clear" 162 android:text="@string/result"
163 android:textSize="40sp"/>
164
165<Button
166android:id="@+id/divide"
167 android:layout_width="80dp"
168 android:layout_height="70dp"
169 android:layout_alignParentRight="true" 170 android:layout_below="@id/multiply" 171 android:layout_toRightOf="@id/result" 172 android:text="@string/divide"
173 android:textSize="40sp"/>
174
175<Button
176android:id="@+id/dot"
177 android:layout_width="80dp"
178 android:layout_height="70dp"
179 android:layout_alignParentLeft="true" 180 android:layout_below="@id/zero"
181 android:text="@string/dot"
182 android:textSize="40sp"/>
183<Button
184android:id="@+id/writeButton"
185 android:layout_width="wrap_content" 186 android:layout_height="wrap_conten
t" 187 android:layout_alignParentLeft="true" 188 android:layout_below="@id/dot"
189 android:text="@string/write"
190 android:textSize="40sp"/>
191<Button
192android:id="@+id/readButton"
193 android:layout_width="wrap_content" 194 android:layout_height="wrap_content" 195 android:layout_alignParentRight="true" 196 android:layout_below="@id/dot"
197 android:text="@string/read"
198 android:textSize="40sp"/>
199
200<CheckBox
201android:id="@+id/appendBox"
202 android:text="@string/appendBox"
203 android:layout_width="wrap_content" 204 android:layout_height="wrap_content" 205 android:layout_alignParentBottom="true" 206 android:layout_toLeftOf="@+id/divide" 207 android:layout_toStartOf="@+id/divide" 208 android:layout_marginBottom="12dp" 209/>
210
211</RelativeLayout>
212
213<EditText
214
215android:layout_width="match_parent"
216 android:layout_height="wrap_content"
217 android:id="@+id/textView"/>
218
219<EditText
220
221android:layout_width="match_parent"
222 android:layout_height="wrap_content"
223 android:id="@+id/displayView"/>
224
225<EditText
226android:id="@+id/errorzero"
227 android:layout_width="fill_parent"
228 android:layout_height="wrap_content"
229 android:layout_gravity="center"
230 android:editable="false"
231 android:gravity="center"
232/>
233<EditText
234android:id="@+id/resultText"
235 android:layout_width="fill_parent"
236 android:layout_height="wrap_content"
237 android:layout_gravity="center"
238 android:editable="false"
239 android:gravity="left"
240 android:text="@string/resultText"
241/>
242</LinearLayout>
243</ScrollView>
View Code
事件监听和实现计算代码(写在MainActivity.java⽂件⾥)
ample.lenovo.calculator;
2
3
4
5import android.app.Activity;
t.Context;
7import android.os.Bundle;
8import android.view.View;
9import android.view.View.OnClickListener;
10import android.widget.Button;
11import android.widget.CheckBox;
12import android.widget.EditText;
13
14import java.io.FileInputStream;
15import java.io.FileNotFoundException;
16import java.io.FileOutputStream;
17import java.io.IOException;
18
19public class MainActivity extends Activity {
20/**
21 * Called when the activity is first created.
22*/
23private EditText output = null;
24private EditText input = null;
25private Button btn0 = null;
26private Button btn1 = null;
27private Button btn2 = null;
28private Button btn3 = null;
29private Button btn4 = null;
30private Button btn5 = null;
31private Button btn6 = null;
32private Button btn7 = null;
33private Button btn8 = null;
34private Button btn9 = null;
35private Button btnadd = null;
36private Button btnsubtract = null;
37private Button btnmultiply = null;
38private Button btndivide = null;
39private Button btnclear = null;
40private Button btnresult = null;
41private Button btndot = null;
42
43private EditText errorzero = null;
44
45private EditText resultText = null;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论