⽤androidstudio完成简单计算器设计开发⽇志
简单计算器的设计是学习安卓的第⼀个APP的设计,我发现,其实安卓跟Java有很⼤的相似性,虽然界⾯的设计要⽤到前端的设计,但是功能的实现基本都是使⽤Java来实现的,但由于对Android studio和虚拟器的不熟悉以及对Java的掌握度不⾼,所以在进⾏设计的时候遇到了很多问题。
(1)最先遇到的问题是蓝叠中国突然连接不上,⽽且连接上之后第⼆天可能就⼜出问题了,之前是可以的,后来就上⽹原因,发现可能是adb那⾥的端⼝被占⽤了,可以先去验证⼀下,然后再重新连,可是后来在连接的时候⼜显⽰积极拒绝连接,可能是虚拟机那⾥出问题了。由于⼿机系统不同,所以就⽆法连接⼿机进⾏界⾯的实现,后来就想着能不能⽤回Android⾃⾝的虚拟器,发现说可能是emulator 和haxm的⽂件不完全,要先将这两个⽂件下载好,然后再去BIOS那⾥修改设置,发现是可以的,只是⾃⾝带的虚拟机还是太⼤,运⾏太慢,所以还是去弄蓝叠中国了。
(2)进⼊了模拟器了,但是由于蓝叠中国的界⾯是长⽅形的,⽽在Android studio设置的preview是长⽅形的,所以有些地⽅显⽰不出来,所以在建⽴⼀个项⽬之前需要设置⼀下界⾯。
实现的界⾯如下:
设计步骤:
(1)在布局⽂件中声明按钮等;
(2)在activity中获得实例;
(3)调⽤getText⽅法进⾏加减乘除运算。
源代码如下:
l
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="schemas.android/apk/res/android"
xmlns:app="schemas.android/apk/res-auto"
xmlns:tools="schemas.android/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<EditText                                        对页⾯进⾏布局
android:id="@+id/tv_label"
android:id="@+id/tv_label"
android:layout_width="match_parent"        android:layout_height="60dp"
android:paddingBottom="5dp"
android:paddingRight="5dp"
android:textSize="30sp"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"        android:layout_marginTop="5dp"
android:orientation="horizontal"
android:gravity="center_horizontal">
<Button
android:id="@+id/btn_clear"
android:layout_width="50dp"
android:layout_height="50dp"
android:text="C"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"        android:layout_marginTop="5dp"
android:orientation="horizontal"
android:gravity="center_horizontal">
<Button
android:id="@+id/btn_1"
android:text="1"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp" />
<Button
android:id="@+id/btn_2"
android:text="2"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp" />
<Button
android:id="@+id/btn_3"
android:text="3"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp" />
<Button
android:id="@+id/btn_plus"
android:text="+"
android:textSize="20sp"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp" />    </LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"        android:layout_marginTop="5dp"
android:orientation="horizontal"
android:gravity="center_horizontal">
<Button
android:id="@+id/btn_4"
android:text="4"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_5"
android:text="5"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_6"
android:text="6"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_reduce"
android:text="-"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp" />    </LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"        android:layout_marginTop="5dp"
android:orientation="horizontal"
android:gravity="center_horizontal">
<Button
android:id="@+id/btn_7"
android:text="7"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
简易安卓app开发
android:id="@+id/btn_8"
android:text="8"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_9"
android:layout_width="50dp"
android:layout_height="50dp"
android:text="9"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_time"
android:text="*"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"            android:paddingRight="15sp"
android:paddingBottom="15sp"/>    </LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"        android:layout_marginTop="5dp"
android:orientation="horizontal"
android:gravity="center_horizontal">
<Button
android:id="@+id/btn_point"
android:text="."
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_0"
android:text="0"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:paddingRight="20sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_equal"
android:text="="
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginLeft="10dp"
android:textSize="20sp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
<Button
android:id="@+id/btn_divide"
android:text="/"
android:layout_width="50dp"
android:layout_height="50dp"
android:textSize="20sp"
android:layout_marginLeft="10dp"
android:paddingRight="15sp"
android:paddingBottom="15sp"/>
</LinearLayout>
</LinearLayout>
这⼀次选择了LinearLayout布局,因为对⽐起来,对该布局了解的更深,使⽤起来更加简单⼀些MainActivity源代码如下:
package com.xdw.jisuanji;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity implements View.OnClickListener  {
Button btn_1,btn_2,btn_3,btn_4,btn_5,btn_6,btn_7,btn_8,btn_9,btn_0;
Button btn_plus,btn_clear,btn_reduce,btn_time,btn_point,btn_equal,btn_devide;
EditText tv_label;
boolean clear_flag;  //清空标识
@Override
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_main);    //将对象实例化
btn_1=(Button)findViewById(R.id.btn_1);
btn_2=(Button)findViewById(R.id.btn_2);
btn_3=(Button)findViewById(R.id.btn_3);
btn_4=(Button)findViewById(R.id.btn_4);
btn_5=(Button)findViewById(R.id.btn_5);
btn_6=(Button)findViewById(R.id.btn_6);
btn_7=(Button)findViewById(R.id.btn_7);
btn_8=(Button)findViewById(R.id.btn_8);
btn_9=(Button)findViewById(R.id.btn_9);
btn_0=(Button)findViewById(R.id.btn_0);
btn_plus=(Button)findViewById(R.id.btn_plus);
btn_clear=(Button)findViewById(R.id.btn_clear);
btn_reduce=(Button)findViewById(R.id.btn_reduce);
btn_time=(Button)findViewById(R.id.btn_time);
btn_point=(Button)findViewById(R.id.btn_point);
btn_equal=(Button)findViewById(R.id.btn_equal);
btn_devide=(Button)findViewById(R.id.btn_divide);
tv_label=(EditText)findViewById(R.id.tv_label);  //实例化之后的显⽰屏
btn_1.setOnClickListener(this);    //设置点击事件
btn_2.setOnClickListener(this);
btn_3.setOnClickListener(this);
btn_4.setOnClickListener(this);
btn_5.setOnClickListener(this);
btn_6.setOnClickListener(this);
btn_7.setOnClickListener(this);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。