2012-03-05 2 views
-2

誰かが私を助けてくれるのだろうかと思っていました。私は最終的なプロジェクトとしてAndroidアプリケーションを作成していますが、現在は1つの部分を除いて正常に動作しています。私が持っている問題は、XMLで設定セットのボタンは、アプリケーションを閉じる強制的に言って、画面を引き上げる押すと、このクラスはコードが機能していないのですが、それ以前に動作しましたが

public class convert extends Activity 
{ 
Button mButton; 
EditText eweight; 
EditText eheight; 
TextView t; 
String s,s2; 
double meters = 0; 
double kg = 0; 

public void onCreate(Bundle savedInstanceState) 
{ 
super.onCreate(savedInstanceState); 
requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams. FLAG_FULLSCREEN); 
setContentView(R.layout.convert); 
eweight = (EditText)findViewById(R.id.eweight); 
eheight = (EditText)findViewById(R.id.eheight); 
} 
public void converth(View view) 
{ 

    s2 = convert.this.eweight.getText().toString(); 
    int stone = Integer.parseInt(s2); 
    kg = stone*6.35; 
    t = (TextView)findViewById(R.id.newweight); 
    t.setText(""+kg); 
} 
public void convertw(View view) 
{ 
    s = convert.this.eheight.getText().toString(); 
    int feet = Integer.parseInt(s); 
    meters = feet*0.3048; 
    t = (TextView)findViewById(R.id.newheight); 
    t.setText(""+meters); 
} 
public void pass(View view) 
{ 
    Intent i = new Intent(); 
     i.setClassName("com.b00348312.workout","com.b00348312.workout.WorkoutChoice"); 
    if (meters > 0) 
    { 
     double number = getIntent().getDoubleExtra("height", meters); 
    } 
    if (kg > 0) 
    { 
     double number2 = getIntent().getDoubleExtra("weight", kg); 
    } 
    startActivity(i); 
} 

が動作していないということです。

ボタンは、xmlの組み込みの "andoid:onClick = ''"ステートメントを使用して設定されます。 getTextためのステートメントは、()もこのクラスで使用すると正常に動作している

public void onCreate(Bundle savedInstanceState) 
    { 
    // add a click listener to the button 
    mPickDate.setOnClickListener(new View.OnClickListener(){ 
     public void onClick(View v) { 
      showDialog(DATE_DIALOG_ID); 
     } 
    }); 
    // get the current date 
    final Calendar c = Calendar.getInstance(); 
    mYear = c.get(Calendar.YEAR); 
    mMonth = c.get(Calendar.MONTH); 
    mDay = c.get(Calendar.DAY_OF_MONTH); 

    // display the current date (this method is below) 
    updateDisplay(); 

    mButton = (Button)findViewById(R.id.get); 
    weight = (EditText)findViewById(R.id.weight); 
    height = (EditText)findViewById(R.id.height); 
    t = (TextView)findViewById(R.id.out); 

    mButton.setOnClickListener(
     new View.OnClickListener() 
     { 
      public void onClick(View view) 
      { 
       s = WorkoutChoice.this.weight.getText().toString(); 
       s2 = WorkoutChoice.this.height.getText().toString(); 
       int w = Integer.parseInt(s); 
       double h = Double.parseDouble(s2); 
       double BMI = (w/h)/h; 
       t.setText(""+BMI); 
      } 
     }); 

} 

誰もが、他の任意の文が一つのクラスで動作しているようですなぜアイデアではなく持っています。ここでは

がものですがfrom logcat:

03-05 22:22:34.637: E/global(2987): Deprecated Thread methods are not supported. 
03-05 22:22:34.637: E/global(2987): java.lang.UnsupportedOperationException 
03-05 22:22:34.637: E/global(2987):  at java.lang.VMThread.stop(VMThread.java:85) 
03-05 22:22:34.637: E/global(2987):  at java.lang.Thread.stop(Thread.java:1391) 
03-05 22:22:34.637: E/global(2987):  at java.lang.Thread.stop(Thread.java:1356) 
03-05 22:22:34.637: E/global(2987):  at com.b00348312.workout.Splashscreen$1.run(Splashscreen.java:42) 
03-05 22:22:54.597: D/dalvikvm(2987): GC_FOR_MALLOC freed 6061 objects/319632 bytes in 63ms 
03-05 22:22:54.607: D/AndroidRuntime(2987): Shutting down VM 
03-05 22:22:54.607: W/dalvikvm(2987): threadid=1: thread exiting with uncaught exception (group=0x400259f8) 
03-05 22:22:54.627: E/AndroidRuntime(2987): FATAL EXCEPTION: main 
03-05 22:22:54.627: E/AndroidRuntime(2987): java.lang.IllegalStateException: Could not execute method of the activity 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.view.View$1.onClick(View.java:2072) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.view.View.performClick(View.java:2408) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.view.View$PerformClick.run(View.java:8817) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.os.Handler.handleCallback(Handler.java:587) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.os.Handler.dispatchMessage(Handler.java:92) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.os.Looper.loop(Looper.java:144) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.app.ActivityThread.main(ActivityThread.java:4937) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.reflect.Method.invokeNative(Native Method) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.reflect.Method.invoke(Method.java:521) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at dalvik.system.NativeStart.main(Native Method) 
03-05 22:22:54.627: E/AndroidRuntime(2987): Caused by: java.lang.reflect.InvocationTargetException 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at com.b00348312.workout.convert.convertw(convert.java:44) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.reflect.Method.invokeNative(Native Method) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.reflect.Method.invoke(Method.java:521) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at android.view.View$1.onClick(View.java:2067) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  ... 11 more 
03-05 22:22:54.627: E/AndroidRuntime(2987): Caused by: java.lang.NumberFormatException: unable to parse '' as integer 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.Integer.parseInt(Integer.java:412) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  at java.lang.Integer.parseInt(Integer.java:382) 
03-05 22:22:54.627: E/AndroidRuntime(2987):  ... 15 more 
+0

任意のstacktrace? – njzk2

+0

'Logcat'で取得した' Exception'でstacktraceをポストしますか? – Luksprog

+0

あなたはlogcatにfuill stacktraceを投稿できますか? –

答えて

1

後のアクティビティコードから...問題は、特定のアクティビティのレイアウトを設定していないにもかかわらず、ボタンを見つけるためにfindViewById()を実行しているところです。

+0

問題は最初のアクティビティにあります。 2番目のものは正常に動作し、必要なものが表示され、必要な計算が行われます。 –

-1

「プロジェクト」→「クリーン」を実行して再構築してください。前回の作業が成功してから編集していない場合は、クリーンアップしてください。

+0

行 "s2 = convert.this.eweight.getText()。toString();" 2番目のクラスでうまく動作します。最初のクラスで同じことをする必要がありますが、うまくいかないようです。私はそれが何かを持っているかもしれないと思います。私はonclickを動作させる方法を教えています。クラスでは、それはdoesntの仕事(1つ1つ)です。私はonClickを行うxmlファイルを使用していますが、 )私は、クラス自体の中でonclickメソッドを作成しています –

+0

コードには基本的な問題があり、クリーンではそれだけで解決することはありません。 – Siddharth

関連する問題