淮海工学院 缠小溪(Java/C++)

第一个android程序比较简单,具体的要求是,编写一个简单的贷款计算器,根据输入的贷款金额、期限和利率,显示每月应还款的金额。要求合理的使用布局进行界面设计,对输入的数据错误使用toast通知机制显示。

<?xml version="1.0" encoding="utf-8"?><GridLayoutxmlns:android=""android:layout_width="match_parent"android:layout_height="match_parent"android:useDefaultMargins="true"android:columnCount="5"><!– 标题 –><TextViewandroid:layout_columnSpan="5"android:layout_gravity="center_horizontal"android:layout_marginTop="10dip"android:text="银行利息计算器"android:textSize="20dip"/><!– 贷款金额–><TextViewandroid:text="贷 款 金 额:"android:layout_gravity="right"android:textSize="20dip"android:layout_marginLeft="6dip"android:width="100dip"/><EditText android:id="@+id/loanSum"android:ems="8"android:layout_columnSpan="3"android:layout_marginLeft="-5dip"android:hint="单位:元(RMB)"android:inputType="numberDecimal"/><!– 贷款期限 –><TextViewandroid:text="期限(月数):"android:layout_column="0"android:layout_gravity="right"android:textSize="20dip"android:width="100dip"android:layout_marginLeft="6dip"/><EditText android:id="@+id/month"android:ems="8"android:layout_columnSpan="3"android:layout_marginLeft="-5dip"android:hint="单位:月(Month)"android:inputType="number"/><!– 每月利息 –><TextViewandroid:text="每 月 利 率:"android:layout_column="0"android:layout_gravity="right"android:textSize="20dip"android:width="100dip"android:layout_marginLeft="6dip"/><EditText android:id="@+id/rate"android:ems="8"android:layout_columnSpan="3"android:layout_marginLeft="-5dip"android:hint="单位:元(RMB)"android:inputType="numberDecimal"/><!– 提交和清空按钮 –><Button android:id="@+id/reset"android:text="清空输入"android:layout_column="0"android:layout_columnSpan="2"android:layout_gravity="right"android:width="100dip"android:layout_marginLeft="40dip"/><Button android:id="@+id/submit"android:text="提交计算"android:layout_column="2"android:layout_columnSpan="3"android:width="100dip"android:layout_gravity="left"/><!– 计算结果显示 ,,使用Toast消息机制显示–></GridLayout>package com.sevend;import java.text.DecimalFormat;import android.app.Activity;import android.os.Bundle;import android.text.InputType;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class CalculatorActivity extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);final EditText loanSum=(EditText)findViewById(R.id.loanSum);final EditText month=(EditText)findViewById(R.id.month);final EditText rate=(EditText)findViewById(R.id.rate);Button submit=(Button)findViewById(R.id.submit);Button reset=(Button)findViewById(R.id.reset);/*** 提交事件处理*/submit.setOnClickListener(new View.OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubif("".equals(month.getText().toString().trim())||"".equals(loanSum.getText().toString().trim())||"".equals(rate.getText().toString().trim())){Toast.makeText(CalculatorActivity.this, "输入信息不能为空!", Toast.LENGTH_SHORT).show();}else{double allMoney=0.0;double loanMoney=Double.parseDouble(loanSum.getText().toString());int loanMonth=Integer.parseInt(month.getText().toString());double loanRate=Double.parseDouble(rate.getText().toString());System.out.println("loanMoney="+loanMoney);allMoney=loanMoney*loanRate*loanMonth+loanMoney;DecimalFormat df=new DecimalFormat("0.000");Toast.makeText(CalculatorActivity.this, "您应缴纳的利息为:"+df.format(allMoney), Toast.LENGTH_SHORT).show();}}});/*** 清空事件处理*/reset.setOnClickListener(new View.OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubloanSum.setText("");month.setText("");rate.setText("");}});}}1、对于输入框输入数据的类型控制:

根据要求,本程序的三个输入框只允许用户输入数字,其中,贷款总额和月利率必须是浮点数,期限必须为整数

实现该功能可以有两种方式:

在main.xml中,通过EditText中的inputType来设置或者在activity中setInputType()函数来设置,其有如下属性:

//文本类型,多为大写、小写和数字符号。

有人要进来,有一些人不得不离开。

淮海工学院 缠小溪(Java/C++)

相关文章:

你感兴趣的文章:

标签云: