Java 我的android应用程序说在我';我正在调试它

Java 我的android应用程序说在我';我正在调试它,java,android,xml,eclipse,Java,Android,Xml,Eclipse,你好,我是一名学习爪哇语的大学生。我正在开发一个android应用程序。它编译并没有显示错误。但是,当它运行时,会出现意外的关闭错误 这是我的申请表。当您单击calculate ws时,您希望更改到此屏幕 这是我的密码: package com.warhammerdicerrolleralpha; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.

你好,我是一名学习爪哇语的大学生。我正在开发一个android应用程序。它编译并没有显示错误。但是,当它运行时,会出现意外的关闭错误

这是我的申请表。当您单击calculate 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;
                }

        }
    }
}
package com.warhammerdicerrolleralpha;
导入android.app.Activity;
导入android.os.Bundle;
导入android.view.view;
导入android.view.view.OnClickListener;
导入android.widget.Button;
导入android.widget.EditText;
导入android.widget.ImageView;
导入android.widget.TextView;
公共类myMain扩展活动
{
编辑文本输入numberofdice;
最终TextView textGenerateNumber=(TextView)findViewById(R.id.text4);
私人编辑文本,文本2,文本3;
专用按钮btutorial1;
int number1=Integer.parseInt(text.getText().toString());
int number2=Integer.parseInt(text2.getText().toString());
ImageView i=新的ImageView(本);
{
i、 setAdjustViewBounds(真);
}
私有int-myFaceValue;
int myNum;
/**
*在首次创建活动时调用。
* 
*@返回
*/
@凌驾
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
公开作废go()
{
while(myNum>0)
{
//TODO自动生成的方法存根
textGenerateNumber.setText(String.valueOf(enternumberofdice));
--没药;
返回;
}
}
公共int roll()
{
int val=(int)(6*Math.random()+1);//范围1-6
设定值(val);
返回val;
}
{
尝试
{
myNum=Integer.parseInt(enternumberofdice.getText().toString());
} 
捕获(NumberFormatException nfe)
{
输入numberofdice.setText(“不工作”);
}
}
public int getValue()
{
返回myFaceValue;
}
公共void设置值(int myFaceValue)
{
this.myFaceValue=myFaceValue;
}
{
开关(myFaceValue)
{
案例5:
i、 setImageResource(R.drawable.dicefive);
打破
案例1:
i、 setImageResource(R.drawable.diceone);
打破
案例3:
i、 setImageResource(R.drawable.dicethree);
打破
案例2:
i、 setImageResource(R.drawable.dicetwo);
打破
案例4:
i、 setImageResource(R.drawable.dicefour);
打破
案例6:
i、 setImageResource(R.drawable.dicesix);
打破
违约:
i、 setImageResource(R.drawable.error);
打破
}
text=(EditText)findViewById(R.id.editText1);
text2=(EditText)findViewById(R.id.editText2);
text3=(EditText)findViewById(R.id.editText3);
btutorial1=(按钮)findViewById(R.id.button1);
btutorial1.setOnClickListener((OnClickListener)this);
Button Button Generate=(按钮)findViewById(R.id.button1);
enternumberofdice=(EditText)findViewById(R.id.enternumberofdice);
Button Button Generate2=(Button)findViewById(R.id.battlecalculate);
buttonGenerate2.setOnClickListener(新的OnClickListener()
{
@凌驾
公共void onClick(视图v)
{
setContentView(R.layout.main2);
}
});
setOnClickListener(新的OnClickListener()
{
@凌驾
公共void onClick(视图v)
{
//TODO自动生成的方法存根
go();
滚动();
}
});
}
公共void onClick(视图)
{
开关(view.getId())
{
案例R.id.button1:
如果(编号1>编号2)
{
text3.setText(“三个及以上”);
返回;
}
否则如果(编号1<编号2)
{
text3.setText(“五个及以上”);
返回;
}
else if(number1==number2)
{
text3.setText(“四个及以上”);
返回;
}
其他的
{
text3.setText(“不工作”);
返回;
}
}
}
}

看看你的堆栈跟踪,但我认为可能是因为这个块:

private EditText text, text2, text3;

private Button btutorial1;

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

int number2 = Integer.parseInt(text2.getText().toString());
看起来好像您正试图在空值上解析int。您需要使用与以下类似的代码指定文本、文本2、文本3在表单中的位置:

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

希望这能有所帮助。

XML链接在这里,我想没有多少人会对下载您的XML文件的PDF感兴趣。您可以编辑您的问题并将XML粘贴到其中吗?此外,大多数人会要求您提供logcat输出;我尝试添加我的XML代码,但我在预览页面中得到了补充。Rob Hruska你做了什么更改??没有,但我会保留你建议的更改。[2011-03-13 20:27:30-Logcat]未找到设备com.android.ddmlib.adbcommandejectedException:未在com.android.ddmlib.AdbHelper.setDevice(AdbHelper.java:736)找到设备,位于com.android.ddmlib.AdbHelper.executeMemoteCommand(AdbHelper.java:373)位于com.android.ddmlib.device.executeShellCommand(device.java:284)位于com.android.ddmuilib.logcat.LogPanel$3.run(LogPanel.java:527)[2011-03-13 20:47:31-ddms]无法绑定到本地8700进行调试我不知道如何在java中获取堆栈跟踪??