当前位置:   article > 正文

安卓实验-设计三种计算器的UI_安卓做运算器的页面设计

安卓做运算器的页面设计

 目录

界面展示:

主活动页面:

简单计算器:

科学计算器

程序计算器

 代码实现:

后端代码:

前端代码:


因为我本人觉得这种看起来整齐的页面用线性布局更加简单理解,故我均采用了线性布局。当然利用其他布局也可以完成。


界面展示:

主活动页面:

  • 简单计算器:

 科学计算器

 程序计算器

 代码实现:

后端代码:

MainActivity.java:

  1. package com.example.mytest_1;
  2. import androidx.appcompat.app.AppCompatActivity;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.widget.Button;
  7. public class MainActivity extends AppCompatActivity implements View.OnClickListener {
  8. private Button button1;
  9. private Button button2;
  10. private Button button3;
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_main);
  15. button1 = (Button) findViewById(R.id.button1);
  16. button2 = (Button) findViewById(R.id.button2);
  17. button3 = (Button) findViewById(R.id.button3);
  18. //设置监听器
  19. button1.setOnClickListener(this);
  20. button2.setOnClickListener(this);
  21. button3.setOnClickListener(this);
  22. }
  23. @Override
  24. public void onClick(View view) {
  25. //书写逻辑:利用显式intent实现页面的跳转
  26. //获取按钮id,分别跳转不同的页面
  27. switch (view.getId()) {
  28. case R.id.button1:
  29. Intent in1 = new Intent(MainActivity.this, SimpleCalculator.class);
  30. startActivity(in1);
  31. break;
  32. case R.id.button2:
  33. Intent in2 = new Intent(MainActivity.this, ScientificCalculator.class);
  34. startActivity(in2);
  35. break;
  36. case R.id.button3:
  37. Intent in3 = new Intent(MainActivity.this, ProgramCalculator.class);
  38. startActivity(in3);
  39. break;
  40. default:
  41. break;
  42. }
  43. }
  44. }

 ProgramCalculator.java

  1. package com.example.mytest_1;
  2. import androidx.appcompat.app.AppCompatActivity;
  3. import android.os.Bundle;
  4. public class ProgramCalculator extends AppCompatActivity {
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.activity_program_calculator);
  9. }
  10. }

ScientificCalculator.java

  1. package com.example.mytest_1;
  2. import androidx.appcompat.app.AppCompatActivity;
  3. import android.os.Bundle;
  4. public class ScientificCalculator extends AppCompatActivity {
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.activity_scientific_calculator);
  9. }
  10. }

SimpleCalculator.java

  1. package com.example.mytest_1;
  2. import androidx.appcompat.app.AppCompatActivity;
  3. import android.os.Bundle;
  4. public class SimpleCalculator extends AppCompatActivity {
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.activity_simple_calculator);
  9. }
  10. }

前端代码:

主活动

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical">
  6. <TextView
  7. android:layout_width="match_parent"
  8. android:layout_height="wrap_content"
  9. android:text="实验一:设计三种计算器的UI"
  10. android:gravity="center"
  11. android:textColor="#FF0000"
  12. android:textSize="26sp" />
  13. <Button
  14. android:id="@+id/button1"
  15. android:layout_width="match_parent"
  16. android:layout_height="wrap_content"
  17. android:text="简单计算器" />
  18. <Button
  19. android:id="@+id/button2"
  20. android:layout_width="match_parent"
  21. android:layout_height="wrap_content"
  22. android:text="科学计算器" />
  23. <Button
  24. android:id="@+id/button3"
  25. android:layout_width="match_parent"
  26. android:layout_height="wrap_content"
  27. android:text="程序计算器" />
  28. </LinearLayout>

程序计算器

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical">
  6. <LinearLayout
  7. android:layout_width="match_parent"
  8. android:layout_height="0dp"
  9. android:layout_marginBottom="10dp"
  10. android:layout_weight="1"
  11. android:orientation="vertical">
  12. <TextView
  13. android:layout_width="match_parent"
  14. android:layout_height="match_parent"
  15. android:background="@drawable/my_border"
  16. android:gravity="center|right"
  17. android:hint="0 "
  18. android:textSize="56sp" />
  19. </LinearLayout>
  20. <!-- 单选1-->
  21. <LinearLayout
  22. android:layout_width="match_parent"
  23. android:layout_height="0dp"
  24. android:layout_marginTop="10dp"
  25. android:layout_weight="1"
  26. android:orientation="vertical">
  27. <RadioGroup
  28. android:layout_width="match_parent"
  29. android:layout_height="match_parent"
  30. android:background="@drawable/my_border"
  31. android:orientation="horizontal">
  32. <RadioButton
  33. android:layout_width="0dp"
  34. android:layout_height="match_parent"
  35. android:layout_weight="1"
  36. android:text="十六进制"
  37. android:textSize="25dp" />
  38. <RadioButton
  39. android:layout_width="0dp"
  40. android:layout_height="match_parent"
  41. android:layout_weight="1"
  42. android:text="十进制"
  43. android:textSize="25dp" />
  44. <RadioButton
  45. android:layout_width="0dp"
  46. android:layout_height="match_parent"
  47. android:layout_weight="1"
  48. android:text="八进制"
  49. android:textSize="25dp" />
  50. <RadioButton
  51. android:layout_width="0dp"
  52. android:layout_height="match_parent"
  53. android:layout_weight="1"
  54. android:text="二进制"
  55. android:textSize="25dp" />
  56. </RadioGroup>
  57. </LinearLayout>
  58. <!-- 单选2-->
  59. <LinearLayout
  60. android:layout_width="match_parent"
  61. android:layout_height="0dp"
  62. android:layout_marginTop="10dp"
  63. android:layout_weight="1"
  64. android:orientation="vertical">
  65. <RadioGroup
  66. android:layout_width="match_parent"
  67. android:layout_height="match_parent"
  68. android:background="@drawable/my_border"
  69. android:orientation="horizontal">
  70. <RadioButton
  71. android:layout_width="0dp"
  72. android:layout_height="match_parent"
  73. android:layout_weight="1"
  74. android:text="八字节"
  75. android:textSize="25dp" />
  76. <RadioButton
  77. android:layout_width="0dp"
  78. android:layout_height="match_parent"
  79. android:layout_weight="1"
  80. android:text="四字节"
  81. android:textSize="25dp" />
  82. <RadioButton
  83. android:layout_width="0dp"
  84. android:layout_height="match_parent"
  85. android:layout_weight="1"
  86. android:text="二字节"
  87. android:textSize="25dp" />
  88. <RadioButton
  89. android:layout_width="0dp"
  90. android:layout_height="match_parent"
  91. android:layout_weight="1"
  92. android:text="单字节"
  93. android:textSize="25dp" />
  94. </RadioGroup>
  95. </LinearLayout>
  96. <LinearLayout
  97. android:layout_width="match_parent"
  98. android:layout_height="wrap_content"
  99. android:orientation="vertical">
  100. <!--上最外层-->
  101. <LinearLayout
  102. android:layout_width="match_parent"
  103. android:layout_height="wrap_content"
  104. android:layout_weight="3"
  105. android:background="@drawable/my_border"
  106. android:orientation="vertical">
  107. <!--上-第一行-->
  108. <LinearLayout
  109. android:layout_width="match_parent"
  110. android:layout_height="wrap_content"
  111. android:orientation="horizontal">
  112. <Button
  113. android:layout_width="0dp"
  114. android:layout_height="wrap_content"
  115. android:layout_marginLeft="10dp"
  116. android:layout_marginRight="10dp"
  117. android:layout_weight="1"
  118. android:text="NOT" />
  119. <Button
  120. android:layout_width="0dp"
  121. android:layout_height="wrap_content"
  122. android:layout_marginRight="10dp"
  123. android:layout_weight="1"
  124. android:text="AND" />
  125. <Button
  126. android:layout_width="0dp"
  127. android:layout_height="wrap_content"
  128. android:layout_marginRight="10dp"
  129. android:layout_weight="1"
  130. android:text="OR" />
  131. <Button
  132. android:layout_width="0dp"
  133. android:layout_height="wrap_content"
  134. android:layout_marginRight="10dp"
  135. android:layout_weight="1"
  136. android:text="XOR" />
  137. </LinearLayout>
  138. <!--上-第二行-->
  139. <LinearLayout
  140. android:layout_width="match_parent"
  141. android:layout_height="wrap_content"
  142. android:orientation="horizontal">
  143. <Button
  144. android:layout_width="0dp"
  145. android:layout_height="wrap_content"
  146. android:layout_marginLeft="10dp"
  147. android:layout_marginRight="10dp"
  148. android:layout_weight="1"
  149. android:text="循环左移" />
  150. <Button
  151. android:layout_width="0dp"
  152. android:layout_height="wrap_content"
  153. android:layout_marginRight="10dp"
  154. android:layout_weight="1"
  155. android:text="循环右移" />
  156. <Button
  157. android:layout_width="0dp"
  158. android:layout_height="wrap_content"
  159. android:layout_marginRight="10dp"
  160. android:layout_weight="1"
  161. android:text="左 移" />
  162. <Button
  163. android:layout_width="0dp"
  164. android:layout_height="wrap_content"
  165. android:layout_marginRight="10dp"
  166. android:layout_weight="1"
  167. android:text="M O D" />
  168. </LinearLayout>
  169. <!--上-第三行-->
  170. <LinearLayout
  171. android:layout_width="match_parent"
  172. android:layout_height="wrap_content"
  173. android:orientation="horizontal">
  174. <Button
  175. android:layout_width="0dp"
  176. android:layout_height="wrap_content"
  177. android:layout_marginLeft="10dp"
  178. android:layout_marginRight="10dp"
  179. android:layout_weight="1"
  180. android:text="无符号左移" />
  181. <Button
  182. android:layout_width="0dp"
  183. android:layout_height="wrap_content"
  184. android:layout_marginRight="10dp"
  185. android:layout_weight="1"
  186. android:text="无符号右移" />
  187. </LinearLayout>
  188. </LinearLayout>
  189. <!--下最外层-->
  190. <LinearLayout
  191. android:layout_width="match_parent"
  192. android:layout_height="wrap_content"
  193. android:layout_weight="6"
  194. android:background="@drawable/my_border"
  195. android:orientation="vertical">
  196. <!--下-第一行-->
  197. <LinearLayout
  198. android:layout_width="match_parent"
  199. android:layout_height="wrap_content"
  200. android:orientation="horizontal">
  201. <Button
  202. android:layout_width="0dp"
  203. android:layout_height="wrap_content"
  204. android:layout_marginLeft="10dp"
  205. android:layout_marginRight="10dp"
  206. android:layout_weight="1"
  207. android:text="退格" />
  208. <Button
  209. android:layout_width="0dp"
  210. android:layout_height="wrap_content"
  211. android:layout_marginRight="10dp"
  212. android:layout_weight="1"
  213. android:text="清除" />
  214. <Button
  215. android:layout_width="0dp"
  216. android:layout_height="wrap_content"
  217. android:layout_marginRight="10dp"
  218. android:layout_weight="1"
  219. android:text="9" />
  220. <Button
  221. android:layout_width="0dp"
  222. android:layout_height="wrap_content"
  223. android:layout_marginRight="10dp"
  224. android:layout_weight="1"
  225. android:text="±" />
  226. </LinearLayout>
  227. <!--下-第二行-->
  228. <LinearLayout
  229. android:layout_width="match_parent"
  230. android:layout_height="wrap_content"
  231. android:orientation="horizontal">
  232. <Button
  233. android:layout_width="0dp"
  234. android:layout_height="wrap_content"
  235. android:layout_marginLeft="10dp"
  236. android:layout_marginRight="10dp"
  237. android:layout_weight="1"
  238. android:text="6" />
  239. <Button
  240. android:layout_width="0dp"
  241. android:layout_height="wrap_content"
  242. android:layout_marginRight="10dp"
  243. android:layout_weight="1"
  244. android:text="7" />
  245. <Button
  246. android:layout_width="0dp"
  247. android:layout_height="wrap_content"
  248. android:layout_marginRight="10dp"
  249. android:layout_weight="1"
  250. android:text="8" />
  251. <Button
  252. android:layout_width="0dp"
  253. android:layout_height="wrap_content"
  254. android:layout_marginRight="10dp"
  255. android:layout_weight="1"
  256. android:text="+" />
  257. </LinearLayout>
  258. <!--下-第三行-->
  259. <LinearLayout
  260. android:layout_width="match_parent"
  261. android:layout_height="wrap_content"
  262. android:orientation="horizontal">
  263. <Button
  264. android:layout_width="0dp"
  265. android:layout_height="wrap_content"
  266. android:layout_marginLeft="10dp"
  267. android:layout_marginRight="10dp"
  268. android:layout_weight="1"
  269. android:text="3" />
  270. <Button
  271. android:layout_width="0dp"
  272. android:layout_height="wrap_content"
  273. android:layout_marginRight="10dp"
  274. android:layout_weight="1"
  275. android:text="4" />
  276. <Button
  277. android:layout_width="0dp"
  278. android:layout_height="wrap_content"
  279. android:layout_marginRight="10dp"
  280. android:layout_weight="1"
  281. android:text="5" />
  282. <Button
  283. android:layout_width="0dp"
  284. android:layout_height="wrap_content"
  285. android:layout_marginRight="10dp"
  286. android:layout_weight="1"
  287. android:text="-" />
  288. </LinearLayout>
  289. <!--下-第四行-->
  290. <LinearLayout
  291. android:layout_width="match_parent"
  292. android:layout_height="wrap_content"
  293. android:orientation="horizontal">
  294. <Button
  295. android:layout_width="0dp"
  296. android:layout_height="wrap_content"
  297. android:layout_marginLeft="10dp"
  298. android:layout_marginRight="10dp"
  299. android:layout_weight="1"
  300. android:text="0" />
  301. <Button
  302. android:layout_width="0dp"
  303. android:layout_height="wrap_content"
  304. android:layout_marginRight="10dp"
  305. android:layout_weight="1"
  306. android:text="1" />
  307. <Button
  308. android:layout_width="0dp"
  309. android:layout_height="wrap_content"
  310. android:layout_marginRight="10dp"
  311. android:layout_weight="1"
  312. android:text="2" />
  313. <Button
  314. android:layout_width="0dp"
  315. android:layout_height="wrap_content"
  316. android:layout_marginRight="10dp"
  317. android:layout_weight="1"
  318. android:text="*" />
  319. </LinearLayout>
  320. <!--下-第五行-->
  321. <LinearLayout
  322. android:layout_width="match_parent"
  323. android:layout_height="wrap_content"
  324. android:orientation="horizontal">
  325. <Button
  326. android:layout_width="0dp"
  327. android:layout_height="wrap_content"
  328. android:layout_marginLeft="10dp"
  329. android:layout_marginRight="10dp"
  330. android:layout_weight="1"
  331. android:text="A" />
  332. <Button
  333. android:layout_width="0dp"
  334. android:layout_height="wrap_content"
  335. android:layout_marginRight="10dp"
  336. android:layout_weight="1"
  337. android:text="B" />
  338. <Button
  339. android:layout_width="0dp"
  340. android:layout_height="wrap_content"
  341. android:layout_marginRight="10dp"
  342. android:layout_weight="1"
  343. android:text="C" />
  344. <Button
  345. android:layout_width="0dp"
  346. android:layout_height="wrap_content"
  347. android:layout_marginRight="10dp"
  348. android:layout_weight="1"
  349. android:text="/" />
  350. </LinearLayout>
  351. <!--下-第六行-->
  352. <LinearLayout
  353. android:layout_width="match_parent"
  354. android:layout_height="wrap_content"
  355. android:orientation="horizontal">
  356. <Button
  357. android:layout_width="0dp"
  358. android:layout_height="wrap_content"
  359. android:layout_marginLeft="10dp"
  360. android:layout_marginRight="10dp"
  361. android:layout_weight="1"
  362. android:text="D" />
  363. <Button
  364. android:layout_width="0dp"
  365. android:layout_height="wrap_content"
  366. android:layout_marginRight="10dp"
  367. android:layout_weight="1"
  368. android:text="E" />
  369. <Button
  370. android:layout_width="0dp"
  371. android:layout_height="wrap_content"
  372. android:layout_marginRight="10dp"
  373. android:layout_weight="1"
  374. android:text="F" />
  375. <Button
  376. android:layout_width="0dp"
  377. android:layout_height="wrap_content"
  378. android:layout_marginRight="10dp"
  379. android:layout_weight="1"
  380. android:text="=" />
  381. </LinearLayout>
  382. </LinearLayout>
  383. </LinearLayout>
  384. </LinearLayout>

科学计算器

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical">
  6. <LinearLayout
  7. android:layout_width="match_parent"
  8. android:layout_height="0dp"
  9. android:layout_marginBottom="10dp"
  10. android:layout_weight="1"
  11. android:orientation="vertical">
  12. <TextView
  13. android:layout_width="match_parent"
  14. android:layout_height="match_parent"
  15. android:background="@drawable/my_border"
  16. android:gravity="center|right"
  17. android:hint="0 "
  18. android:textSize="56sp" />
  19. </LinearLayout>
  20. <!-- 单选-->
  21. <LinearLayout
  22. android:layout_width="match_parent"
  23. android:layout_height="0dp"
  24. android:layout_marginTop="10dp"
  25. android:layout_weight="1"
  26. android:orientation="vertical">
  27. <RadioGroup
  28. android:layout_width="match_parent"
  29. android:layout_height="match_parent"
  30. android:background="@drawable/my_border"
  31. android:orientation="horizontal">
  32. <RadioButton
  33. android:layout_width="0dp"
  34. android:layout_height="match_parent"
  35. android:layout_weight="1"
  36. android:text="角度"
  37. android:textSize="25dp" />
  38. <RadioButton
  39. android:layout_width="0dp"
  40. android:layout_height="match_parent"
  41. android:layout_weight="1"
  42. android:text="弧度"
  43. android:textSize="25dp" />
  44. <RadioButton
  45. android:layout_width="0dp"
  46. android:layout_height="match_parent"
  47. android:layout_weight="1"
  48. android:text="梯度"
  49. android:textSize="25dp" />
  50. </RadioGroup>
  51. </LinearLayout>
  52. <LinearLayout
  53. android:layout_width="match_parent"
  54. android:layout_height="wrap_content"
  55. android:orientation="vertical">
  56. <!--上最外层-->
  57. <LinearLayout
  58. android:layout_width="match_parent"
  59. android:layout_height="wrap_content"
  60. android:layout_weight="6"
  61. android:background="@drawable/my_border"
  62. android:orientation="vertical">
  63. <!--上-第一行-->
  64. <LinearLayout
  65. android:layout_width="match_parent"
  66. android:layout_height="wrap_content"
  67. android:orientation="horizontal">
  68. <Button
  69. android:layout_width="0dp"
  70. android:layout_height="wrap_content"
  71. android:layout_marginLeft="10dp"
  72. android:layout_marginRight="10dp"
  73. android:layout_weight="1"
  74. android:text="SIN" />
  75. <Button
  76. android:layout_width="0dp"
  77. android:layout_height="wrap_content"
  78. android:layout_marginRight="10dp"
  79. android:layout_weight="1"
  80. android:text="COS" />
  81. <Button
  82. android:layout_width="0dp"
  83. android:layout_height="wrap_content"
  84. android:layout_marginRight="10dp"
  85. android:layout_weight="1"
  86. android:text="TAN" />
  87. <Button
  88. android:layout_width="0dp"
  89. android:layout_height="wrap_content"
  90. android:layout_marginRight="10dp"
  91. android:layout_weight="1"
  92. android:text="COT" />
  93. </LinearLayout>
  94. <!--上-第二行-->
  95. <LinearLayout
  96. android:layout_width="match_parent"
  97. android:layout_height="wrap_content"
  98. android:orientation="horizontal">
  99. <Button
  100. android:layout_width="0dp"
  101. android:layout_height="wrap_content"
  102. android:layout_marginLeft="10dp"
  103. android:layout_marginRight="10dp"
  104. android:layout_weight="1"
  105. android:text="ASIN" />
  106. <Button
  107. android:layout_width="0dp"
  108. android:layout_height="wrap_content"
  109. android:layout_marginRight="10dp"
  110. android:layout_weight="1"
  111. android:text="ACOS" />
  112. <Button
  113. android:layout_width="0dp"
  114. android:layout_height="wrap_content"
  115. android:layout_marginRight="10dp"
  116. android:layout_weight="1"
  117. android:text="ATAN" />
  118. <Button
  119. android:layout_width="0dp"
  120. android:layout_height="wrap_content"
  121. android:layout_marginRight="10dp"
  122. android:layout_weight="1"
  123. android:text="ACOT" />
  124. </LinearLayout>
  125. <!--上-第三行-->
  126. <LinearLayout
  127. android:layout_width="match_parent"
  128. android:layout_height="wrap_content"
  129. android:orientation="horizontal">
  130. <Button
  131. android:layout_width="0dp"
  132. android:layout_height="wrap_content"
  133. android:layout_marginLeft="10dp"
  134. android:layout_marginRight="10dp"
  135. android:layout_weight="1"
  136. android:text="SINH" />
  137. <Button
  138. android:layout_width="0dp"
  139. android:layout_height="wrap_content"
  140. android:layout_marginRight="10dp"
  141. android:layout_weight="1"
  142. android:text="COSH" />
  143. <Button
  144. android:layout_width="0dp"
  145. android:layout_height="wrap_content"
  146. android:layout_marginRight="10dp"
  147. android:layout_weight="1"
  148. android:text="TANH" />
  149. <Button
  150. android:layout_width="0dp"
  151. android:layout_height="wrap_content"
  152. android:layout_marginRight="10dp"
  153. android:layout_weight="1"
  154. android:text="COTH" />
  155. </LinearLayout>
  156. <!--上-第四行-->
  157. <LinearLayout
  158. android:layout_width="match_parent"
  159. android:layout_height="wrap_content"
  160. android:orientation="horizontal">
  161. <Button
  162. android:layout_width="0dp"
  163. android:layout_height="wrap_content"
  164. android:layout_marginLeft="10dp"
  165. android:layout_marginRight="10dp"
  166. android:layout_weight="1"
  167. android:text="ASINH" />
  168. <Button
  169. android:layout_width="0dp"
  170. android:layout_height="wrap_content"
  171. android:layout_marginRight="10dp"
  172. android:layout_weight="1"
  173. android:text="ACOSH" />
  174. <Button
  175. android:layout_width="0dp"
  176. android:layout_height="wrap_content"
  177. android:layout_marginRight="10dp"
  178. android:layout_weight="1"
  179. android:text="ATANH" />
  180. <Button
  181. android:layout_width="0dp"
  182. android:layout_height="wrap_content"
  183. android:layout_marginRight="10dp"
  184. android:layout_weight="1"
  185. android:text="ACOTH" />
  186. </LinearLayout>
  187. <!--上-第五行-->
  188. <LinearLayout
  189. android:layout_width="match_parent"
  190. android:layout_height="wrap_content"
  191. android:orientation="horizontal">
  192. <Button
  193. android:layout_width="0dp"
  194. android:layout_height="wrap_content"
  195. android:layout_marginLeft="10dp"
  196. android:layout_marginRight="10dp"
  197. android:layout_weight="1"
  198. android:text="LN" />
  199. <Button
  200. android:layout_width="0dp"
  201. android:layout_height="wrap_content"
  202. android:layout_marginRight="10dp"
  203. android:layout_weight="1"
  204. android:text="LOG10" />
  205. <Button
  206. android:layout_width="0dp"
  207. android:layout_height="wrap_content"
  208. android:layout_marginRight="10dp"
  209. android:layout_weight="1"
  210. android:text="N!" />
  211. <Button
  212. android:layout_width="0dp"
  213. android:layout_height="wrap_content"
  214. android:layout_marginRight="10dp"
  215. android:layout_weight="1"
  216. android:text="X^Y" />
  217. </LinearLayout>
  218. <!--上-第六行-->
  219. <LinearLayout
  220. android:layout_width="match_parent"
  221. android:layout_height="wrap_content"
  222. android:orientation="horizontal">
  223. <Button
  224. android:layout_width="0dp"
  225. android:layout_height="wrap_content"
  226. android:layout_marginLeft="10dp"
  227. android:layout_marginRight="10dp"
  228. android:layout_weight="1"
  229. android:text="E^X" />
  230. <Button
  231. android:layout_width="0dp"
  232. android:layout_height="wrap_content"
  233. android:layout_marginRight="10dp"
  234. android:layout_weight="1"
  235. android:text="Π" />
  236. <Button
  237. android:layout_width="0dp"
  238. android:layout_height="wrap_content"
  239. android:layout_marginRight="10dp"
  240. android:layout_weight="1"
  241. android:text="(" />
  242. <Button
  243. android:layout_width="0dp"
  244. android:layout_height="wrap_content"
  245. android:layout_marginRight="10dp"
  246. android:layout_weight="1"
  247. android:text=")" />
  248. </LinearLayout>
  249. </LinearLayout>
  250. <!--下最外层-->
  251. <LinearLayout
  252. android:layout_width="match_parent"
  253. android:layout_height="wrap_content"
  254. android:layout_weight="5"
  255. android:background="@drawable/my_border"
  256. android:orientation="vertical">
  257. <!--下-第一行-->
  258. <LinearLayout
  259. android:layout_width="match_parent"
  260. android:layout_height="wrap_content"
  261. android:orientation="horizontal">
  262. <Button
  263. android:layout_width="0dp"
  264. android:layout_height="wrap_content"
  265. android:layout_marginLeft="10dp"
  266. android:layout_marginRight="10dp"
  267. android:layout_weight="1"
  268. android:text="退格" />
  269. <Button
  270. android:layout_width="0dp"
  271. android:layout_height="wrap_content"
  272. android:layout_marginRight="10dp"
  273. android:layout_weight="1"
  274. android:text="清除" />
  275. <Button
  276. android:layout_width="0dp"
  277. android:layout_height="wrap_content"
  278. android:layout_marginRight="10dp"
  279. android:layout_weight="1"
  280. android:text="±" />
  281. <Button
  282. android:layout_width="0dp"
  283. android:layout_height="wrap_content"
  284. android:layout_marginRight="10dp"
  285. android:layout_weight="1"
  286. android:text="+" />
  287. </LinearLayout>
  288. <!--下-第二行-->
  289. <LinearLayout
  290. android:layout_width="match_parent"
  291. android:layout_height="wrap_content"
  292. android:orientation="horizontal">
  293. <Button
  294. android:layout_width="0dp"
  295. android:layout_height="wrap_content"
  296. android:layout_marginLeft="10dp"
  297. android:layout_marginRight="10dp"
  298. android:layout_weight="1"
  299. android:text="7" />
  300. <Button
  301. android:layout_width="0dp"
  302. android:layout_height="wrap_content"
  303. android:layout_marginRight="10dp"
  304. android:layout_weight="1"
  305. android:text="8" />
  306. <Button
  307. android:layout_width="0dp"
  308. android:layout_height="wrap_content"
  309. android:layout_marginRight="10dp"
  310. android:layout_weight="1"
  311. android:text="9" />
  312. <Button
  313. android:layout_width="0dp"
  314. android:layout_height="wrap_content"
  315. android:layout_marginRight="10dp"
  316. android:layout_weight="1"
  317. android:text="-" />
  318. </LinearLayout>
  319. <!--下-第三行-->
  320. <LinearLayout
  321. android:layout_width="match_parent"
  322. android:layout_height="wrap_content"
  323. android:orientation="horizontal">
  324. <Button
  325. android:layout_width="0dp"
  326. android:layout_height="wrap_content"
  327. android:layout_marginLeft="10dp"
  328. android:layout_marginRight="10dp"
  329. android:layout_weight="1"
  330. android:text="4" />
  331. <Button
  332. android:layout_width="0dp"
  333. android:layout_height="wrap_content"
  334. android:layout_marginRight="10dp"
  335. android:layout_weight="1"
  336. android:text="5" />
  337. <Button
  338. android:layout_width="0dp"
  339. android:layout_height="wrap_content"
  340. android:layout_marginRight="10dp"
  341. android:layout_weight="1"
  342. android:text="6" />
  343. <Button
  344. android:layout_width="0dp"
  345. android:layout_height="wrap_content"
  346. android:layout_marginRight="10dp"
  347. android:layout_weight="1"
  348. android:text="*" />
  349. </LinearLayout>
  350. <!--下-第四行-->
  351. <LinearLayout
  352. android:layout_width="match_parent"
  353. android:layout_height="wrap_content"
  354. android:orientation="horizontal">
  355. <Button
  356. android:layout_width="0dp"
  357. android:layout_height="wrap_content"
  358. android:layout_marginLeft="10dp"
  359. android:layout_marginRight="10dp"
  360. android:layout_weight="1"
  361. android:text="1" />
  362. <Button
  363. android:layout_width="0dp"
  364. android:layout_height="wrap_content"
  365. android:layout_marginRight="10dp"
  366. android:layout_weight="1"
  367. android:text="2" />
  368. <Button
  369. android:layout_width="0dp"
  370. android:layout_height="wrap_content"
  371. android:layout_marginRight="10dp"
  372. android:layout_weight="1"
  373. android:text="3" />
  374. <Button
  375. android:layout_width="0dp"
  376. android:layout_height="wrap_content"
  377. android:layout_marginRight="10dp"
  378. android:layout_weight="1"
  379. android:text="/" />
  380. </LinearLayout>
  381. <!--下-第五行-->
  382. <LinearLayout
  383. android:layout_width="match_parent"
  384. android:layout_height="wrap_content"
  385. android:orientation="horizontal">
  386. <Button
  387. android:layout_width="0dp"
  388. android:layout_height="wrap_content"
  389. android:layout_marginLeft="10dp"
  390. android:layout_marginRight="10dp"
  391. android:layout_weight="1"
  392. android:text="0" />
  393. <Button
  394. android:layout_width="0dp"
  395. android:layout_height="wrap_content"
  396. android:layout_marginRight="10dp"
  397. android:layout_weight="1"
  398. android:text="." />
  399. <Button
  400. android:layout_width="0dp"
  401. android:layout_height="wrap_content"
  402. android:layout_marginRight="10dp"
  403. android:layout_weight="1"
  404. android:text="1/X" />
  405. <Button
  406. android:layout_width="0dp"
  407. android:layout_height="wrap_content"
  408. android:layout_marginRight="10dp"
  409. android:layout_weight="1"
  410. android:text="=" />
  411. </LinearLayout>
  412. </LinearLayout>
  413. </LinearLayout>
  414. </LinearLayout>

简单计算器

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical">
  6. <TextView
  7. android:layout_width="match_parent"
  8. android:layout_height="wrap_content"
  9. android:layout_marginTop="20dp"
  10. android:background="@drawable/my_border"
  11. android:gravity="center|right"
  12. android:hint="0"
  13. android:textSize="26sp" />
  14. <!--第一行-->
  15. <LinearLayout
  16. android:layout_width="match_parent"
  17. android:layout_height="wrap_content"
  18. android:orientation="horizontal">
  19. <Button
  20. android:layout_width="0dp"
  21. android:layout_height="wrap_content"
  22. android:layout_marginLeft="10dp"
  23. android:layout_marginRight="10dp"
  24. android:layout_weight="1"
  25. android:text="退格" />
  26. <Button
  27. android:layout_width="0dp"
  28. android:layout_height="wrap_content"
  29. android:layout_marginRight="10dp"
  30. android:layout_weight="1"
  31. android:text="清除" />
  32. <Button
  33. android:layout_width="0dp"
  34. android:layout_height="wrap_content"
  35. android:layout_marginRight="10dp"
  36. android:layout_weight="1"
  37. android:text="±" />
  38. <Button
  39. android:layout_width="0dp"
  40. android:layout_height="wrap_content"
  41. android:layout_marginRight="10dp"
  42. android:layout_weight="1"
  43. android:text="+" />
  44. </LinearLayout>
  45. <!--第二行-->
  46. <LinearLayout
  47. android:layout_width="match_parent"
  48. android:layout_height="wrap_content"
  49. android:orientation="horizontal">
  50. <Button
  51. android:layout_width="0dp"
  52. android:layout_height="wrap_content"
  53. android:layout_marginLeft="10dp"
  54. android:layout_marginRight="10dp"
  55. android:layout_weight="1"
  56. android:text="7" />
  57. <Button
  58. android:layout_width="0dp"
  59. android:layout_height="wrap_content"
  60. android:layout_marginRight="10dp"
  61. android:layout_weight="1"
  62. android:text="8" />
  63. <Button
  64. android:layout_width="0dp"
  65. android:layout_height="wrap_content"
  66. android:layout_marginRight="10dp"
  67. android:layout_weight="1"
  68. android:text="9" />
  69. <Button
  70. android:layout_width="0dp"
  71. android:layout_height="wrap_content"
  72. android:layout_marginRight="10dp"
  73. android:layout_weight="1"
  74. android:text="-" />
  75. </LinearLayout>
  76. <!--第三行-->
  77. <LinearLayout
  78. android:layout_width="match_parent"
  79. android:layout_height="wrap_content"
  80. android:orientation="horizontal">
  81. <Button
  82. android:layout_width="0dp"
  83. android:layout_height="wrap_content"
  84. android:layout_marginLeft="10dp"
  85. android:layout_marginRight="10dp"
  86. android:layout_weight="1"
  87. android:text="4" />
  88. <Button
  89. android:layout_width="0dp"
  90. android:layout_height="wrap_content"
  91. android:layout_marginRight="10dp"
  92. android:layout_weight="1"
  93. android:text="5" />
  94. <Button
  95. android:layout_width="0dp"
  96. android:layout_height="wrap_content"
  97. android:layout_marginRight="10dp"
  98. android:layout_weight="1"
  99. android:text="6" />
  100. <Button
  101. android:layout_width="0dp"
  102. android:layout_height="wrap_content"
  103. android:layout_marginRight="10dp"
  104. android:layout_weight="1"
  105. android:text="*" />
  106. </LinearLayout>
  107. <!--第四行-->
  108. <LinearLayout
  109. android:layout_width="match_parent"
  110. android:layout_height="wrap_content"
  111. android:orientation="horizontal">
  112. <Button
  113. android:layout_width="0dp"
  114. android:layout_height="wrap_content"
  115. android:layout_marginLeft="10dp"
  116. android:layout_marginRight="10dp"
  117. android:layout_weight="1"
  118. android:text="1" />
  119. <Button
  120. android:layout_width="0dp"
  121. android:layout_height="wrap_content"
  122. android:layout_marginRight="10dp"
  123. android:layout_weight="1"
  124. android:text="2" />
  125. <Button
  126. android:layout_width="0dp"
  127. android:layout_height="wrap_content"
  128. android:layout_marginRight="10dp"
  129. android:layout_weight="1"
  130. android:text="3" />
  131. <Button
  132. android:layout_width="0dp"
  133. android:layout_height="wrap_content"
  134. android:layout_marginRight="10dp"
  135. android:layout_weight="1"
  136. android:text="/" />
  137. </LinearLayout>
  138. <!--最后一行-->
  139. <LinearLayout
  140. android:layout_width="match_parent"
  141. android:layout_height="wrap_content"
  142. android:orientation="horizontal">
  143. <Button
  144. android:layout_width="0dp"
  145. android:layout_height="wrap_content"
  146. android:layout_marginLeft="10dp"
  147. android:layout_marginRight="10dp"
  148. android:layout_weight="1"
  149. android:text="0" />
  150. <Button
  151. android:layout_width="0dp"
  152. android:layout_height="wrap_content"
  153. android:layout_marginRight="10dp"
  154. android:layout_weight="1"
  155. android:text="." />
  156. <Button
  157. android:layout_width="0dp"
  158. android:layout_height="wrap_content"
  159. android:layout_marginRight="10dp"
  160. android:layout_weight="1"
  161. android:text="1/X" />
  162. <Button
  163. android:layout_width="0dp"
  164. android:layout_height="wrap_content"
  165. android:layout_marginRight="10dp"
  166. android:layout_weight="1"
  167. android:text="=" />
  168. </LinearLayout>
  169. </LinearLayout>

最后还有一个drawable资源 :my_border.xml文件,该文件实现了一个轮廓,上述前端页面基本上都进行了引用

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <solid android:color="#00000000" />
  4. <stroke
  5. android:width="2dp"
  6. android:color="#808080" />
  7. <corners android:radius="5dp" />
  8. </shape>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/271917
推荐阅读
相关标签
  

闽ICP备14008679号