【Android每日一讲】2012.10.30 自制计算器 - 多按钮的整合应用
1. 范例说明
在之前我们学会了Android按钮事件的设计,接下来的范例将利用简单的按钮组合制作一个简单的计算器。这个范例中,除了要活用按钮的组合外,也示范如何利用不同的按钮事件处理与TextView之间的文字变化,尤其是事件彼此不同,连带处理的结果也不同。2. 运行结果

3. 编写代码
@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);mTextView2 = (TextView) findViewById(R.id.mTextView2);mTextView4 = (TextView) findViewById(R.id.mTextView4);mButton2 = (Button) findViewById(R.id.mButton2);mButton3 = (Button) findViewById(R.id.mButton3);mButton4 = (Button) findViewById(R.id.mButton4);mButton5 = (Button) findViewById(R.id.mButton5);mEditText1 = (EditText) findViewById(R.id.mText1);mEditText2 = (EditText) findViewById(R.id.mText2);mButton2.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {mTextView2.setText("+");String strRet = Integer.toString(Integer.parseInt(mEditText1.getText().toString())+ Integer.parseInt(mEditText2.getText().toString()));mTextView4.setText(strRet);}});mButton3.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {mTextView2.setText("-");String strRet = Integer.toString(Integer.parseInt(mEditText1.getText().toString())- Integer.parseInt(mEditText2.getText().toString()));mTextView4.setText(strRet);}});mButton4.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {mTextView2.setText("*");String strRet = Integer.toString(Integer.parseInt(mEditText1.getText().toString())* Integer.parseInt(mEditText2.getText().toString()));mTextView4.setText(strRet);}});mButton5.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {mTextView2.setText("/");String strRet = Integer.toString(Integer.parseInt(mEditText1.getText().toString())/ Integer.parseInt(mEditText2.getText().toString()));mTextView4.setText(strRet);}});}4. 扩展学习与作业
作业:使用一个OnClickListener如何实现本Demo中的计算器
视频讲解:http://www.eyeandroid.com/thread-9789-1-1.html