2011-03-14 20 views
0

您好,我是一名學習Java的大學生。我正在研究一個android應用程序。它編譯並顯示沒有錯誤。但是,當它運行時,會出現意外的關閉錯誤。我的android應用程序在調試時沒有找到源碼

enter image description here

enter image description here

這裏是我的應用程序。當你點擊計算ws時,你的目的是改變到這個屏幕。

這裏是我的代碼:

package com.warhammerdicerrolleralpha; 


import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class myMain extends Activity 
{ 

    EditText enternumberofdice; 

    final TextView textGenerateNumber = (TextView) findViewById(R.id.text4); 

    private EditText text, text2, text3; 

    private Button btutorial1; 

    int number1 = Integer.parseInt(text.getText().toString()); 

    int number2 = Integer.parseInt(text2.getText().toString()); 

    ImageView i = new ImageView(this); 
    { 
     i.setAdjustViewBounds(true); 
    } 

    private int myFaceValue; 

    int myNum; 

    /** 
    * Called when the activity is first created. 
    * 
    * @return 
    */ 
    @Override 

    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
    } 

    public void go() 
    { 
     while (myNum > 0) 
     { 

      // TODO Auto-generated method stub 
      textGenerateNumber.setText(String.valueOf(enternumberofdice)); 

      --myNum; 

      return; 
     } 
    } 

    public int roll() 
    { 
     int val = (int) (6 * Math.random() + 1); // Range 1-6 
     setValue(val); 
     return val; 
    } 

    { 
     try 
     { 
      myNum = Integer.parseInt(enternumberofdice.getText().toString()); 
     } 
      catch (NumberFormatException nfe) 
     { 
      enternumberofdice.setText("Does not work"); 
     } 
    } 

    public int getValue() 
    { 
     return myFaceValue; 
    } 

    public void setValue(int myFaceValue) 
    { 
     this.myFaceValue = myFaceValue; 

    } 

    { 
     switch (myFaceValue) 
     { 
     case 5: 
      i.setImageResource(R.drawable.dicefive); 
      break; 
     case 1: 
      i.setImageResource(R.drawable.diceone); 
      break; 
     case 3: 
      i.setImageResource(R.drawable.dicethree); 
      break; 
     case 2: 
      i.setImageResource(R.drawable.dicetwo); 
      break; 
     case 4: 
      i.setImageResource(R.drawable.dicefour); 
      break; 
     case 6: 
      i.setImageResource(R.drawable.dicesix); 
      break; 
     default: 
      i.setImageResource(R.drawable.error); 
      break; 
     } 

     text = (EditText) findViewById(R.id.editText1); 

     text2 =(EditText) findViewById(R.id.editText2); 

     text3 = (EditText) findViewById(R.id.editText3);  

     btutorial1 = (Button) findViewById(R.id.button1); 

     btutorial1.setOnClickListener((OnClickListener) this); 

     Button buttonGenerate = (Button) findViewById(R.id.button1); 

     enternumberofdice = (EditText) findViewById(R.id.enternumberofdice); 

     Button buttonGenerate2 = (Button) findViewById(R.id.battlecalculate); 

     buttonGenerate2.setOnClickListener(new OnClickListener()  
     { 

      @Override 
      public void onClick(View v) 
      { 
        setContentView(R.layout.main2); 
      } 

     }); 

     buttonGenerate.setOnClickListener(new OnClickListener()  
     { 
      @Override 
      public void onClick(View v) 
      { 
       // TODO Auto-generated method stub 
       go(); 

       roll(); 
      } 

     }); 
    } 

    public void onClick(View view) 
    { 
     switch (view.getId()) 
     { 
      case R.id.button1: 

       if (number1 > number2) 
       { 
        text3.setText("Three and above");  
        return; 
       } 

       else if (number1 < number2) 
       { 
        text3.setText("Five and above");   
        return; 
       } 

       else if (number1 == number2) 
       { 
        text3.setText("Four and above");   
        return; 
       } 

       else 
       { 
        text3.setText("Not Working");  
        return; 
       } 

     } 
    } 
} 
+0

XML鏈接在這裏[鏈接](http://www.mediafire.com/?63b6set5cvxaln8) – lonesarah 2011-03-14 00:44:52

+0

我不認爲很多人會有興趣下載您的XML文件的PDF。你能編輯你的問題並將XML粘貼到它嗎?另外,大多數人都會問你logcat的輸出,它也可能沒有傷害。 – 2011-03-14 00:58:55

+0

我嘗試添加我的XML代碼,但是我在預覽頁面中獲得了另外的內容。 – lonesarah 2011-03-14 01:05:40

回答

0

看看你的堆棧跟蹤,但我認爲這可能是因爲此塊:

private EditText text, text2, text3; 

private Button btutorial1; 

int number1 = Integer.parseInt(text.getText().toString()); 

int number2 = Integer.parseInt(text2.getText().toString()); 

它看起來好像你是在空試圖parseInt函數值。你需要使用類似的代碼來指定文本,text2,text3在你的表單中的位置:

TextView textGenerateNumber = (TextView) findViewById(R.id.text4); 

希望有所幫助。

+0

沒有,但沒有幫助,但我會保持你的建議的變化。 – lonesarah 2011-03-14 00:54:12

+0

你的堆棧跟蹤顯示了什麼? – Kaiesh 2011-03-14 00:55:24

+0

[2011-03-13 20時27分30秒 - 的logcat]未找到設備 com.android.ddmlib.AdbCommandRejectedException:未找到設備 \t在com.android.ddmlib.AdbHelper.setDevice(AdbHelper.java:736) \t在com.android.ddmlib.AdbHelper.executeRemoteCommand(AdbHelper.java:373) \t在com.android.ddmlib.Device.executeShellCommand(Device.java:284) \t在com.android.ddmuilib.logcat.LogPanel $ 3 .run(LogPanel.java:527) [2011-03-13 20:47:31 - ddms]無法綁定到調試器的本地8700 – lonesarah 2011-03-14 01:00:23

相關問題