此例為了實(shí)現(xiàn)顯示兩個(gè)int類型的數(shù)字的乘積
分析思路:
1、需要2個(gè)輸入字符的控件,這里我們使用EditText。
2、1個(gè)TextView控件,用來顯示乘法兩個(gè)字。
3、1個(gè)Button按鈕控件,并且需要在按鈕上綁定監(jiān)聽器,操作取出EditText的值。
4、建立一個(gè)Intent對(duì)象,把取出的兩個(gè)EditText的值存入Intent對(duì)象。
5、把Intent對(duì)象傳入第一個(gè)新的Activty,用來顯示相乘的結(jié)果。
代碼如下:
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.java
package 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
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<edittext android:id="@+id/factorOne" android:layout_width="fill_parent" android:layout_height="wrap_content">
<textview android:id="@+id/symbol" android:layout_width="fill_parent" android:layout_height="wrap_content">
<edittext android:id="@+id/factorTwo" android:layout_width="fill_parent" android:layout_height="wrap_content">
<button android:id="@+id/calculate" android:layout_width="fill_parent" android:layout_height="wrap_content">
</button></edittext>
</textview></edittext></linearlayout>
result.xml
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<textview android:id="@+id/result" android:layout_width="fill_parent" android:layout_height="wrap_content">
</textview>
</linearlayout>
string.xml
<resources>
<string name="hello">Hello World, Main!</string>
<string name="app_name">Calculate</string>
<string name="result">結(jié)果</string>
<string name="symbol">乘以</string>
<string name="calculate">計(jì)算</string>
<string name="exit">退出</string>
<string name="about">關(guān)于</string>
</resources>
AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="dan.calculate" android:versioncode="1" android:versionname="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Main" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN">
<category android:name="android.intent.category.LAUNCHER">
</category>
</action>
<activity android:name=".Result" android:label="@string/result">
</activity>
</intent-filter>
<uses-sdk android:minsdkversion="8">
</uses-sdk>
</activity></application></manifest>
實(shí)現(xiàn)效果如下:
聯(lián)系客服