各位大虾好!
刚开始学习Android ,对照教程敲代码。运行的结果是: Sorry! application (process com.hya.app) has stopped unexpectedly. please try again.
Force close.请大家帮忙看看是什么原因,谢谢了!
主程序为两个Java文件
/*与main.xml对应 的文件——Ex_10AActivity.java*/
package com.hya.app;import android.app.Activity;
import android.os.Bundle;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
public class Ex_10AActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button ok=(Button)findViewById(R.id.button_OK);
ok.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
/*取得输入的身高*/
EditText et=(EditText)findViewById(R.id.height_Edit);
double height=Double.parseDouble(et.getText().toString());
/*取得选择的性别*/
String sex="";
RadioButton rb1=(RadioButton)findViewById(R.id.Sex_Man);
if(rb1.isChecked()){
sex="M";
}else{
sex="F";
}
/*new 一个Intent对象,并指定Class*/
Intent intent= new Intent();
intent.setClass(Ex_10AActivity.this, BMIActivity.class);
/*new一个Bundle对象, 并将要传递的数据传入*/
Bundle bundle=new Bundle();
bundle.putDouble("height", height);
bundle.putString("sex",sex);
/*将Bundle对象assign给Intent*/
intent.putExtras(bundle);
/*调用Activity Ex03_10_1 ?(按照教程写的,不知道这是哪个Activity)*/
startActivity(intent);
}
});
}
}
/*与被调用的UI对应的文件——*//**
*
*/
package com.hya.app;import java.text.DecimalFormat;
import java.text.NumberFormat;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;public class BMIActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/*加载main.xml layout*/
setContentView(R.layout.mylayout);
/*取得Intent中的Bundle对象 */
Bundle bunde=this.getIntent().getExtras();
/*取得Bundle对象中的数据*/
String sex=bunde.getString("sex");
double height = bunde.getDouble("height");
/*判断性别*/
String sexText="";
if (sex.equals("M")){
sexText="男性";
}else{
sexText="女性";
}
/*取得标准体重 */
String weight=this.getWeight(sex,height);
/*设置输出文字*/
TextView tv1=(TextView)findViewById(R.id.text1);
String StrResult="你是一位 "+ sexText+ "\n你的身高是"+height+"厘米\n你的标准体重是"+weight+"公斤";
tv1.setText(StrResult);
}
/*四舍五入的method*/
private String format(double num){
NumberFormat formatter= new DecimalFormat("0.00");
String s= formatter.format(num);
return s;
}
/*以findViewById()取得Button对象,并添加onClickListener*/
private String getWeight(String sex,double height){
String weight="";
if (sex.equals("M")){
weight=format((height-80)*0.7);
}else{
weight=format((height-70)*0.6);
}
return weight;
}
}
刚开始学习Android ,对照教程敲代码。运行的结果是: Sorry! application (process com.hya.app) has stopped unexpectedly. please try again.
Force close.请大家帮忙看看是什么原因,谢谢了!
主程序为两个Java文件
/*与main.xml对应 的文件——Ex_10AActivity.java*/
package com.hya.app;import android.app.Activity;
import android.os.Bundle;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
public class Ex_10AActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button ok=(Button)findViewById(R.id.button_OK);
ok.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
/*取得输入的身高*/
EditText et=(EditText)findViewById(R.id.height_Edit);
double height=Double.parseDouble(et.getText().toString());
/*取得选择的性别*/
String sex="";
RadioButton rb1=(RadioButton)findViewById(R.id.Sex_Man);
if(rb1.isChecked()){
sex="M";
}else{
sex="F";
}
/*new 一个Intent对象,并指定Class*/
Intent intent= new Intent();
intent.setClass(Ex_10AActivity.this, BMIActivity.class);
/*new一个Bundle对象, 并将要传递的数据传入*/
Bundle bundle=new Bundle();
bundle.putDouble("height", height);
bundle.putString("sex",sex);
/*将Bundle对象assign给Intent*/
intent.putExtras(bundle);
/*调用Activity Ex03_10_1 ?(按照教程写的,不知道这是哪个Activity)*/
startActivity(intent);
}
});
}
}
/*与被调用的UI对应的文件——*//**
*
*/
package com.hya.app;import java.text.DecimalFormat;
import java.text.NumberFormat;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;public class BMIActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/*加载main.xml layout*/
setContentView(R.layout.mylayout);
/*取得Intent中的Bundle对象 */
Bundle bunde=this.getIntent().getExtras();
/*取得Bundle对象中的数据*/
String sex=bunde.getString("sex");
double height = bunde.getDouble("height");
/*判断性别*/
String sexText="";
if (sex.equals("M")){
sexText="男性";
}else{
sexText="女性";
}
/*取得标准体重 */
String weight=this.getWeight(sex,height);
/*设置输出文字*/
TextView tv1=(TextView)findViewById(R.id.text1);
String StrResult="你是一位 "+ sexText+ "\n你的身高是"+height+"厘米\n你的标准体重是"+weight+"公斤";
tv1.setText(StrResult);
}
/*四舍五入的method*/
private String format(double num){
NumberFormat formatter= new DecimalFormat("0.00");
String s= formatter.format(num);
return s;
}
/*以findViewById()取得Button对象,并添加onClickListener*/
private String getWeight(String sex,double height){
String weight="";
if (sex.equals("M")){
weight=format((height-80)*0.7);
}else{
weight=format((height-70)*0.6);
}
return weight;
}
}
<activity
android:label="@string/activity_fileManager"
android:name=".BMIActivity" >
</activity>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.hy.app"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk android:minSdkVersion="7" /> <application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".Ex_10AActivity"
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="BMIActivity"></Activity>
</application></manifest>
<Activity android:name="BMIActivity"></Activity>
注意哦 差个点哦
另外package="com.hy.app"
这个定义了你的activity所在的包
新activity要在这个包下哦