您好,登錄后才能下訂單哦!
這篇文章主要講解了“Android studio如何實現簡易的計算器功能”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Android studio如何實現簡易的計算器功能”吧!
具體效果如下
JAVA語句代碼塊:
package com.example.douyingming; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.Button; import android.widget.EditText; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.RadioGroup.OnCheckedChangeListener; import android.widget.TextView; import android.view.View; import android.view.View.OnClickListener; public class CompuActivity extends AppCompatActivity implements OnClickListener { private String opr="+"; //記錄當前運算符,最初運算符為+,可以更改 private EditText et1,et2; private TextView tv; private Button bt; private RadioGroup rg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.samplecompu); //設置匹配頁面為samplecompu rg=(RadioGroup)findViewById(R.id.radioGroup1); //單選按鈕組的按鈕匹配 et1=(EditText)findViewById(R.id.editText1);//匹配第一個編輯框的按鈕 et2=(EditText)findViewById(R.id.editText2);//匹配第二個編輯框的按鈕 tv=(TextView)findViewById(R.id.textView1);//匹配顯示文本 bt=(Button)findViewById(R.id.button1);//獲得按鈕 bt.setOnClickListener(this); //設置計算按鈕的監聽器 rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){ //設置單選按鈕監聽器,獲得單擊時執行 @Override public void onCheckedChanged(RadioGroup group,int checkedId){ // TODO Auto-generated method stub RadioButton rb=(RadioButton)findViewById(checkedId); //設定RadioButton類rb,獲得checkedId opr=rb.getText().toString(); //把rb強轉為String類型,賦給opr } }); } @Override public void onClick(View v){ //定義點擊事件方法 int sum,num1,num2; //定義三個變量 num1 = Integer.parseInt(et1.getText().toString());//接收et1文本框中的數字(強轉為數字類型) num2=Integer.parseInt(et2.getText().toString());//接收et2文本框中的數字(強轉為數字類型) if (opr.equals("+")){ //+法 sum=num1+num2; }else if (opr.equals("-")){//減法 sum=num1-num2; }else if(opr.equals("*")){//乘法 sum=num1*num2; }else{//如果不是加減乘,就執行除法 sum=num1/num2; } tv.setText(String.valueOf(sum)); //顯示setText文本 } }
xml代碼塊
<?xml version="1.0" encoding="utf-8"?> <!-- 設置布局為垂直 --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- 增加id為editText1 寬度剛度匹配自己 文本顯示寬度為8 * 輸入的類型為數字 設置該文本框焦點 --> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="8" android:hint="請輸入數字" android:inputType="number" android:text=""> <requestFocus/> </EditText> <!-- 設置一個RadioGroup組 增加一個id 寬度匹配父類 高度等于自己 該組水平排列 --> <RadioGroup android:id="@+id/radioGroup1" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <!-- 增加id 寬和高自己匹配 選擇為選中狀態 文本內容為+ (四個RadioButton內容相同) --> <RadioButton android:id="@+id/radio0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="+"/> <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="-"/> <RadioButton android:id="@+id/radio2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="*"/> <RadioButton android:id="@+id/radio3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="/"/> </RadioGroup> <!-- 增加id為editText2 寬度剛度匹配自己 文本顯示寬度為8 * 輸入的類型為數字 --> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="8" android:hint="請輸入數2" android:inputType="number" android:text=""/> <!-- * 文本為= --> <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="="/> <TextView android:id="@+id/textView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text=""/> </LinearLayout>
感謝各位的閱讀,以上就是“Android studio如何實現簡易的計算器功能”的內容了,經過本文的學習后,相信大家對Android studio如何實現簡易的計算器功能這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。