Android学习之单击事件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent">
	<LinearLayout 
		xmlns:android="http://schemas.android.com/apk/res/android"
		android:orientation="horizontal" 
		android:layout_width="wrap_content"
		android:layout_height="wrap_content">
		<EditText
			android:id="@+id/myeda" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="输入第一个数字..." />
		<TextView
			android:id="@+id/note" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"/>
		<EditText
			android:id="@+id/myedb" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="输入第二个数字..." />
		<TextView
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text=" = " />
		<TextView
			android:id="@+id/mytext" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="计算结果..." />
	</LinearLayout>
	<LinearLayout 
		xmlns:android="http://schemas.android.com/apk/res/android"
		android:orientation="horizontal" 
		android:layout_width="fill_parent"
		android:layout_height="fill_parent">
		<Button
			android:id="@+id/mybutadd" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="+" />
		<Button
			android:id="@+id/mybutsub" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="-" />
		<Button
			android:id="@+id/mybutmul" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="×" />
		<Button
			android:id="@+id/mybutdiv" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="÷" />
	</LinearLayout>
</LinearLayout>
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MyClickDemo extends Activity {
	private TextView showView = null;
	private TextView note = null;
	private EditText editNum1 = null;
	private EditText editNum2 = null;
	private Button butAdd = null;
	private Button butSub = null;
	private Button butMul = null;
	private Button butDiv = null;
	private int num1 = 0; // 保存输入的数字
	private int num2 = 0; // 保存输入的数字

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		super.setContentView(R.layout.main);
		this.showView = (TextView) super.findViewById(R.id.mytext); // 取得显示结果
		this.editNum1 = (EditText) super.findViewById(R.id.myeda); // 取得输入的内容
		this.editNum2 = (EditText) super.findViewById(R.id.myedb); // 取得输入的内容
		this.butAdd = (Button) super.findViewById(R.id.mybutadd); // 取得操作功能按钮
		this.butSub = (Button) super.findViewById(R.id.mybutsub); // 取得操作功能按钮
		this.butMul = (Button) super.findViewById(R.id.mybutmul); // 取得操作功能按钮
		this.butDiv = (Button) super.findViewById(R.id.mybutdiv); // 取得操作功能按钮
		this.note = (TextView) super.findViewById(R.id.note); // 取得操作的形式
		this.butAdd.setOnClickListener(new AddListener());
		this.butSub.setOnClickListener(new SubListener());
		this.butMul.setOnClickListener(new MulListener());
		this.butDiv.setOnClickListener(new DivListener());
		this.editNum1.setOnClickListener(new OnClickListener() {

			public void onClick(View v) {
				MyClickDemo.this.editNum1.setText("");
			}

		});
		this.editNum2.setOnClickListener(new OnClickListener() {

			public void onClick(View v) {
				MyClickDemo.this.editNum2.setText("");
			}

		});
	}

	private class AddListener implements OnClickListener {

		public void onClick(View v) {
			MyClickDemo.this.num1 = Integer.parseInt(MyClickDemo.this.editNum1
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.num2 = Integer.parseInt(MyClickDemo.this.editNum2
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.note.setText(" + "); // 更新操作的符号
			MyClickDemo.this.showView.setText(String.valueOf(num1 + num2)); // 显示结果
		} // 加法操作

	}

	private class SubListener implements OnClickListener {

		public void onClick(View v) {
			MyClickDemo.this.num1 = Integer.parseInt(MyClickDemo.this.editNum1
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.num2 = Integer.parseInt(MyClickDemo.this.editNum2
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.note.setText(" - "); // 更新操作的符号
			MyClickDemo.this.showView.setText(String.valueOf(num1 - num2)); // 显示结果
		} // 加法操作

	}

	private class MulListener implements OnClickListener {

		public void onClick(View v) {
			MyClickDemo.this.num1 = Integer.parseInt(MyClickDemo.this.editNum1
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.num2 = Integer.parseInt(MyClickDemo.this.editNum2
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.note.setText(" * "); // 更新操作的符号
			MyClickDemo.this.showView.setText(String.valueOf(num1 * num2)); // 显示结果
		} // 加法操作

	}

	private class DivListener implements OnClickListener {

		public void onClick(View v) {
			MyClickDemo.this.num1 = Integer.parseInt(MyClickDemo.this.editNum1
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.num2 = Integer.parseInt(MyClickDemo.this.editNum2
					.getText().toString()); // 取得第一个数字
			MyClickDemo.this.note.setText(" ÷ "); // 更新操作的符号
			MyClickDemo.this.showView.setText(String.valueOf(num1 / num2)); // 显示结果
		} // 加法操作

	}
}

猜你喜欢

转载自chenzheng8975.iteye.com/blog/1938614