此例为了实现显示两个int类型的数字的乘积
分析思路:
1、需要2个输入字符的控件,这里我们使用EditText。
2、1个TextView控件,用来显示乘法两个字。
3、1个Button按钮控件,并且需要在按钮上绑定监听器,操作取出EditText的值。
4、建立一个Intent对象,把取出的两个EditText的值存入Intent对象。
5、把Intent对象传入第一个新的Activty,用来显示相乘的结果。
代码如下:
Main.java
package dan.calculate;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Main extends Activity {
/** Called when the activity is first created. */
EditText factorOne = null;
EditText factorTwo = null;
TextView symbol = null;
Button calculate = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
factorOne = (EditText) findViewById(R.id.factorOne);
factorTwo = (EditText) findViewById(R.id.factorTwo);
symbol = (TextView) findViewById(R.id.symbol);
calculate = (Button) findViewById(R.id.calculate);
symbol.setText(R.string.symbol);
calculate.setText(R.string.calculate);
calculate.setOnClickListener(new CalculateListener());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
menu.add(0,1,1,R.string.exit);
menu.add(0,2,2,R.string.about);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
if(item.getItemId()==1){
finish();
}
return super.onOptionsItemSelected(item);
}
class CalculateListener implements OnClickListener{
@Override
public void onClick(View v) {
String factorOneStr = factorOne.getText().toString();
String factorTwoStr = factorTwo.getText().toString();
Intent intent = new Intent();
intent.putExtra("One", factorOneStr);
intent.putExtra("Two", factorTwoStr);
intent.setClass(Main.this, Result.class);
Main.this.startActivity(intent);
}
}
}
Result.javapackage dan.calculate;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class Result extends Activity{
TextView resultView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
Intent intent = getIntent();
String factorOne = intent.getStringExtra("One");
String factorTwo = intent.getStringExtra("Two");
int result = Integer.parseInt(factorOne)*Integer.parseInt(factorTwo);
resultView = (TextView) findViewById(R.id.result);
resultView.setText(result+"");
}
}
main.xml
result.xml
string.xml
Hello World, Main!
Calculate
结果
乘以
计算
退出
关于
AndroidManifest.xml
实现效果如下: