Android 数据传递Bundle
Android 数据传递Bundle
是以一个计算器的形式实现的
TranslateDateActivity.java
- package rw.data;
- import Android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.ArrayAdapter;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Spinner;
- public class TranslateDateActivity extends Activity {
- /** Called when the activity is first created. */
- private EditText oneEditText,twoEditText;
- private Spinner spinner;
- private Button button;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- oneEditText=(EditText)findViewById(R.id.editText1);
- twoEditText=(EditText)findViewById(R.id.editText2);
- spinner=(Spinner)findViewById(R.id.spinner1);
- ArrayAdapter<String> adapter=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item);
- adapter.add("+");
- adapter.add("-");
- adapter.add("*");
- adapter.add("/");
- spinner.setAdapter(adapter);
- button=(Button)findViewById(R.id.button1);
- button.setOnClickListener(new ButtonListener());
- }
- class ButtonListener implements OnClickListener{
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- Intent intent=new Intent();
- Bundle bundle=new Bundle();
- bundle.putString("onetext", oneEditText.getText().toString());
- bundle.putString("spinner", spinner.getSelectedItem().toString());
- bundle.putString("twotext", twoEditText.getText().toString());
- intent.putExtras(bundle);
- intent.setClass(getApplicationContext(), result.class);
- TranslateDateActivity.this.startActivity(intent);
- }
- }
- }
result.java
- package rw.data;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.TextView;
- public class result extends Activity {
- /** Called when the activity is first created. */
- private TextView textView,textView2,textView3,textView4,textView5;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.calculateresult);
- textView=(TextView)findViewById(R.id.textView1);
- textView2=(TextView)findViewById(R.id.textView2);
- textView3=(TextView)findViewById(R.id.textView3);
- textView4=(TextView)findViewById(R.id.textView4);
- textView5=(TextView)findViewById(R.id.textView5);
- Bundle bundle=getIntent().getExtras();
- textView.setText(bundle.getString("onetext"));
- textView2.setText(bundle.getString("spinner"));
- textView3.setText(bundle.getString("twotext"));
- if (bundle.getString("spinner").endsWith("+")) {
- textView5.setText(String.valueOf(Integer.parseInt(textView.getText().toString())+Integer.parseInt(textView3.getText().toString())));
- }else if(bundle.getString("spinner").endsWith("-")){
- textView5.setText(String.valueOf(Integer.parseInt(textView.getText().toString())-Integer.parseInt(textView3.getText().toString())));
- }else if (bundle.getString("spinner").endsWith("*")) {
- textView5.setText(String.valueOf(Integer.parseInt(textView.getText().toString())*Integer.parseInt(textView3.getText().toString())));
- }else {
- textView5.setText(String.valueOf(Integer.parseInt(textView.getText().toString())/Integer.parseInt(textView3.getText().toString())));
- //由于设置的是整形,所以除法有误差
- }
- }
- }
main.xml
- <?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"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/hello"
- />
- <EditText android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/editText1">
- <requestFocus></requestFocus>
- </EditText>
- <Spinner android:layout_width="match_parent" android:id="@+id/spinner1" android:layout_height="wrap_content"></Spinner>
- <EditText android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/editText2">
- <requestFocus></requestFocus>
- </EditText>
- <Button android:id="@+id/button1" android:layout_height="wrap_content" android:text="计算" android:layout_width="match_parent"></Button>
- </LinearLayout>
calculateresult.xml
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="horizontal"
- android:layout_width="match_parent"
- android:layout_height="match_parent">
- <TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <TextView android:text="TextView" android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <TextView android:text="TextView" android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <TextView android:text="=" android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <TextView android:text="TextView" android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- </LinearLayout>
评论暂时关闭