Java 无法解析用于垃圾游戏的Android应用程序中的方法

Java 无法解析用于垃圾游戏的Android应用程序中的方法,java,android,methods,Java,Android,Methods,我正在创建一个简单的掷骰子应用程序。 我得到这个错误: 无法解析我的nextInt()方法和valueOf()方法的方法 我已将myResults变量声明为整数,因此我不确定为什么会出现此错误。当前,应用程序应该滚动模具并返回值。在解决此错误之前,我无法进入逻辑的其余部分。在继续之前,我想确保至少可以运行此部件。最终目标是掷两个骰子并返回两个骰子的总和,但我目前只为一个骰子掷编码。有人能给我指出正确的方向吗 public class MainActivity extends Activity {

我正在创建一个简单的掷骰子应用程序。
我得到这个错误:

无法解析我的nextInt()方法和valueOf()方法的方法

我已将
myResults
变量声明为
整数
,因此我不确定为什么会出现此错误。当前,应用程序应该滚动模具并返回值。在解决此错误之前,我无法进入逻辑的其余部分。在继续之前,我想确保至少可以运行此部件。最终目标是掷两个骰子并返回两个骰子的总和,但我目前只为一个骰子掷编码。有人能给我指出正确的方向吗

public class MainActivity extends Activity {

        // my variables
        TextView mText;
        ImageButton mButton;
        int myResults;
        String output;

        // function that runs on Start Up
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            mText = (TextView)findViewById(R.id.results);
            mButton = (ImageButton)findViewById(R.id.roll);

            mButton.setOnClickListener(new View.OnClickListener()
            {
                public void onClick(View v)
                {
                    myResults = new Random(System.currentTimeMillis().nextInt(6)+1);
                    rollDice();
                    mText.setText(String.valueOF(myResults));
                }
            });
        }

        public void rollDice()
        {
            switch (myResults)
            {
                case 1:
                    mButton.setImageResource(R.drawable.die1);
                    break;
                case 2:
                    mButton.setImageResource(R.drawable.die2);
                    break;
                case 3:
                    mButton.setImageResource(R.drawable.die3);
                    break;
                case 4:
                    mButton.setImageResource(R.drawable.die4);
                    break;
                case 5:
                    mButton.setImageResource(R.drawable.die5);
                    break;
                case 6:
                    mButton.setImageResource(R.drawable.die6);
                    break;
            }
        }
一旦这个问题得到解决,我想要一些关于将第二个骰子分解成我的结果的指导。但首先解决这些方法将是非常好的

错误位于:

myResults = new Random(System.currentTimeMillis().nextInt(6)+1);
rollDice();
mText.setText(String.valueOF(myResults));
System.currentTimeMillis()返回一个
long
,它是一个原语,因此没有任何成员
nextInt(…)

valueOF()
String.valueOF()
在您的代码中大写不正确(
String.valueOF()

您还错误地使用了
Random
nextInt()
方法
System.currentTimeInMillis()
返回一个
long
值,而
nextInt()
需要一个
Random
对象。正确使用
nextInt()
的方法已在对此的回答中演示

您将
放错了位置

myResults = new Random(System.currentTimeMillis().nextInt(6)+1);
应该是

myResults = new Random(System.currentTimeMillis()).nextInt(6)+1;
问题是,

第一名:

myResults = new Random(System.currentTimeMillis()).nextInt(6)+1;
mText.setText(String.valueOf(myResults));
秒:

myResults = new Random(System.currentTimeMillis()).nextInt(6)+1;
mText.setText(String.valueOf(myResults));
这样试试