activity01package com.Activity01;import android.app.Activity;
import android.content.Intent;
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 Activity01 extends Activity {
    /** Called when the activity is first created. */
private EditText ParamOne;
private TextView textView;
private EditText ParamTwo;
private Button   btn;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        /*初始化控件*/
         ParamOne = (EditText)findViewById(R.id.editText1);
         textView = (TextView)findViewById(R.id.textView1);
         ParamTwo = (EditText)findViewById(R.id.editText2);
           btn      = (Button)findViewById(R.id.button1);
         textView.setText(R.string.run);
        /*绑定监听器至按钮*/
         btn.setOnClickListener(new resultlistener());  
    }
    
    /*创建监听器监听按钮动作*/
    class resultlistener implements OnClickListener{ @Override
public void onClick(View v) {
/*得到控件的值并转换为字符串*/
String One = ParamOne.getText().toString();
String Two = ParamTwo.getText().toString();
/*构建intent对象,并传值*/
Intent intent = new Intent();
intent.putExtra("argOne", One);
intent.putExtra("argTwo", Two);
intent.setClass(Activity01.this, Activity02.class);
Activity01.this.startActivity(intent);
}
    
    }
}activity02package com.Activity01;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;public class Activity02 extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
/*构建intent,并接受值*/
Intent intent = new Intent();
String StrOne = intent.getStringExtra("argOne");
String StrTwo = intent.getStringExtra("argTwo");
/*转换数据类型,并计算*/
int intOne = Integer.parseInt(StrOne);
int intTwo = Integer.parseInt(StrTwo);
int result =intOne * intTwo;
/*显示数据*/
TextView tv = (TextView)findViewById(R.id.T);
tv.setText(result + "");
}
}
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"
    >
    <EditText android:id="@+id/editText1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" >
    </EditText>
    
    <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/textView1" android:text="@string/initstring">
    </TextView>
    <EditText android:id="@+id/editText2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/initstring"></EditText>
    <Button android:layout_width="fill_parent" android:id="@+id/button1" android:layout_height="wrap_content" android:text="@string/result1"></Button>
</LinearLayout>
result.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:id="@+id/T" 
    android:text="@string/initstring"/>
</LinearLayout>mainfest.xml<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.Activity01"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="4" />    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Activity01"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Activity02">
                  
        </activity>         
    </application>
</manifest>
string.xml<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, Activity01!</string>
    <string name="app_name">Activity01</string>
    <string name="result">result</string>
    <string name="run">乘以</string>
    <string name="initstring"></string>
    <string name="result1">计算</string>
</resources>
运行时程序意外终止,.为什么

解决方案 »

  1.   

    不是xml的问题,Activity02中,获取参数的方法不对,应该用this.getIntent()先获取到intent,然后intent.getStringExtra("argName")来获取参数值,楼主注意多设断点调试。
      

  2.   

    activity2中出错啦 /*构建intent,并接受值*/
            Intent intent =getIntent();        String StrOne = intent.getStringExtra("argOne");
            String StrTwo = intent.getStringExtra("argTwo");
            /*转换数据类型,并计算*/
            int intOne = Integer.parseInt(StrOne);
            int intTwo = Integer.parseInt(StrTwo);
            int result =intOne * intTwo;
      

  3.   

     activity2中Intent intent = new Intent();这句代码获取的是空的Intent,所以会出错
    楼上们正解
      

  4.   

    Intent intent = getIntent();
    if(intent != null)  {
        //.....
          .
          .
          .
    }