您的位置:首页 > 移动开发 > Android开发

Android手机软件开发简单计算功能一例

2011-11-17 16:31 495 查看
//Android手机软件开发简单计算功能一例

//应用界面
//res/layout/cal.xml
//-------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/cal_et_one"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:inputType="numberDecimal" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/cal_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/cal_et_one"
android:text="乘以" />
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</RadioGroup>
<RadioButton
android:id="@+id/cal_rb_sheng"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/cal_textview"
android:layout_alignBottom="@+id/cal_textview"
android:layout_toRightOf="@+id/cal_tv_result_display"
android:checked="true"
android:clickable="true"
android:text="乘以" />
<RadioButton
android:id="@+id/cal_rb_div"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/cal_rb_sheng"
android:layout_alignBottom="@+id/cal_rb_sheng"
android:layout_marginLeft="43dp"
android:layout_toRightOf="@+id/cal_rb_sheng"
android:text="除以" />
<EditText
android:id="@+id/cal_et_two"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/cal_textview"
android:inputType="number" />
<Button
android:id="@+id/cal_btn_cal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/cal_et_two"
android:text="开始计算" />
<TextView
android:id="@+id/cal_tv_result_display"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/cal_btn_cal"
android:text="结果为:" />
<TextView
android:id="@+id/cal_tv_result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/cal_tv_result_display" />
</RelativeLayout>

//源代码
//cal.java
//-------------------------------------------------------------------------------
package LC.HelloWorld;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.EditText;
import android.widget.RadioButton;

//定义一个简单计算类
public class cal extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.cal);
//添加计算按钮事件
Button btn_cal=(Button)this.findViewById(R.id.cal_btn_cal);
btn_cal.setOnClickListener(new MycalOnClickListener());

//mule
RadioButton rbMul=(RadioButton)this.findViewById(R.id.cal_rb_sheng);
rbMul.setOnClickListener(new MyMulOnClickListener());
//dive
RadioButton rbDiv=(RadioButton)this.findViewById(R.id.cal_rb_div);
rbDiv.setOnClickListener(new MyDivOnClickListener());
}
//定义计算按钮事件
class MycalOnClickListener implements android.view.View.OnClickListener
{
@Override
public  void onClick(View v)
{
//获取参数一
EditText et_one=(EditText)cal.this.findViewById(R.id.cal_et_one);
String one=et_one.getText().toString();
//获取参数二
EditText et_two=(EditText)cal.this.findViewById(R.id.cal_et_two);
String two=et_two.getText().toString();

//获取运算符
boolean IsMul=true,IsDiv=false;
RadioButton rb_mul=(RadioButton)cal.this.findViewById(R.id.cal_rb_sheng);
RadioButton rb_div=(RadioButton)cal.this.findViewById(R.id.cal_rb_div);
IsMul=rb_mul.isChecked();
IsDiv=rb_div.isChecked();

//开始运算
int result=0;
if(IsMul==true) result=Integer.parseInt(one)*Integer.parseInt(two);
if(IsDiv==true) result=Integer.parseInt(one)/Integer.parseInt(two);

//显示结束
TextView tv=(TextView)cal.this.findViewById(R.id.cal_tv_result);
tv.setText(result+"");
}

}
class MyMulOnClickListener implements android.view.View.OnClickListener
{
@Override
public  void onClick(View v)
{
//获取运算符
boolean IsMul=false;
RadioButton rb_mul=(RadioButton)cal.this.findViewById(R.id.cal_rb_sheng);
RadioButton rb_div=(RadioButton)cal.this.findViewById(R.id.cal_rb_div);
IsMul=rb_mul.isChecked();
if(IsMul==true)
{
rb_div.setChecked(false);
}
}
}
class MyDivOnClickListener implements android.view.View.OnClickListener
{
@Override
public  void onClick(View v)
{
boolean IsDiv=false;
RadioButton rb_mul=(RadioButton)cal.this.findViewById(R.id.cal_rb_sheng);
RadioButton rb_div=(RadioButton)cal.this.findViewById(R.id.cal_rb_div);
IsDiv=rb_div.isChecked();
if(IsDiv==true)
{
rb_mul.setChecked(false);
}
}
}
//
}
//2011-11-17
//vp:hsg



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐