#android利用spinner选择加减乘除进行运算!!!!
##效果图
android利用spinner选择加减乘除进行运算!!!!_第1张图片
##代码部分
.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent" >    <EditText            android:id="@+id/edt_test1"            android:layout_width="60dip"            android:layout_height="40dip"            android:ems="10"            android:inputType="number"            android:textColor="#88e355"            android:textSize="20sp" />    <Spinner        android:id="@+id/spinner"        android:layout_width="60dip"        android:layout_height="40dip"/>    <EditText            android:id="@+id/edt_test2"            android:layout_width="60dip"            android:layout_height="40dip"            android:ems="10"            android:inputType="number"            android:textColor="#88e355"            android:textSize="20sp" />    <Button        android:id="@+id/button1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="=" />    <TextView        android:id="@+id/tv"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="" /></LinearLayout>

.java

package com.example.test1_2;import android.app.Activity;import android.app.AlertDialog;import android.os.Bundle;import android.text.TextUtils;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.Spinner;import android.widget.TextView;public class MainActivity extends Activity {    private Spinner spinner;    private EditText editNum1;    private EditText editNum2;    private TextView result;    private Button button;    private String[] huansaun = {"+","-","×","÷"};    String flag;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        spinner = (Spinner) findViewById(R.id.spinner);        editNum1 = (EditText) findViewById(R.id.edt_test1);        editNum2 = (EditText) findViewById(R.id.edt_test2);        button = (Button) findViewById(R.id.button1);        result = (TextView) findViewById(R.id.tv);        ArrayAdapter<String> huansuan_adapter = new ArrayAdapter<String>(                this,android.R.layout.simple_spinner_dropdown_item,huansaun        );        spinner.setAdapter(huansuan_adapter);        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {            @Override            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {                flag = spinner.getSelectedItem().toString();                Log.e("Dawangba", String.valueOf(position));            }            @Override            public void onNothingSelected(AdapterView<?> parent) {            }        });        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                if (flag.equals("+")){                    AddListener addListener = new AddListener();                    addListener.onClick(v);                }                if (flag.equals("-")){                    SubListener subListener = new SubListener();                    subListener.onClick(v);                }                if (flag.equals("×")){                    MulListener mulListener = new MulListener();                    mulListener.onClick(v);                }                if (flag.equals("÷")){                    DivListener divListener = new DivListener();                    divListener.onClick(v);                }            }        });    }    private void showDialog(){        AlertDialog.Builder dialog = new AlertDialog.Builder(this);        dialog.setTitle("错误");        dialog.setMessage("输入数字无效!");        dialog.setPositiveButton("确定",null);        dialog.show();    }    //加法操作    private class AddListener implements View.OnClickListener {        public void onClick(View v) {            if (TextUtils.isEmpty(editNum1.getText().toString()) || TextUtils.isEmpty(editNum2.getText().toString())){                showDialog();            } else {                float number1 = Float.parseFloat((editNum1.getText().toString()));                float number2 = Float.parseFloat((editNum2.getText().toString()));                result.setText(number1 + number2 + "");            }        }    }    //减法操作    private class SubListener implements View.OnClickListener {        public void onClick(View v) {            if (TextUtils.isEmpty(editNum1.getText().toString()) || TextUtils.isEmpty(editNum2.getText().toString())){                showDialog();            } else {                float number1 = Float.parseFloat((editNum1.getText().toString()));                float number2 = Float.parseFloat((editNum2.getText().toString()));                result.setText(number1 - number2 + "");            }        }    }    //乘法操作    private class MulListener implements View.OnClickListener {        public void onClick(View v) {            if (TextUtils.isEmpty(editNum1.getText().toString()) || TextUtils.isEmpty(editNum2.getText().toString())){                showDialog();            } else {                float number1 = Float.parseFloat((editNum1.getText().toString()));                float number2 = Float.parseFloat((editNum2.getText().toString()));                result.setText(number1 * number2 + "");            }        }    }    //除法操作    private class DivListener implements View.OnClickListener {        public void onClick(View v) {            if (TextUtils.isEmpty(editNum1.getText().toString()) || TextUtils.isEmpty(editNum2.getText().toString())){                showDialog();            } else {                float number1 = Float.parseFloat((editNum1.getText().toString()));                float number2 = Float.parseFloat((editNum2.getText().toString()));                if (number2 == 0){                    showDialog();                } else {                    result.setText(number1 / number2 + "");                }            }        }    }}

部分参照网络,些许bug,可以简单实现!!!

更多相关文章

  1. Android Bitmap最全基本操作:与Drawable 、File、btye[]互转
  2. android 中Drawable跟Bitmap转换及常用于图片相关操作方法 - And
  3. Android官方入门文档[5]建立操作栏
  4. android操作系统默认的图片
  5. Android -很全的android操作内容丰富
  6. android UI跨线程操作
  7. Android中的日历读写操作!!!

随机推荐

  1. Android(安卓)图片平铺效果bitmap
  2. 暑期实训总结_李飞
  3. Android音频焦点处理
  4. Qt for Android编译报错提示:Install to d
  5. Android开发笔记(十七)GIF动画的实现GifAni
  6. Android应用程序插件化研究之资源冲突
  7. 探讨一下Android平台的视频类应用开发的
  8. android利用httpclient实现post、get请求
  9. 读书笔记-Android开发艺术探索-第11章-An
  10. Android(安卓)AsyncTask 的使用