сбой программы при использовании функции Random () - PullRequest
0 голосов
/ 03 июня 2011

Я использую функцию Random () в моем приложении. Когда я нажимаю на кнопку, мне нужно отобразить случайное число в диапазоне 0-8 как текст моей кнопки. Но когда оно запускается, если я нажимаю на эту кнопку, программаНиже будет мой фрагмент кода.

 Random scorenumber=new Random();
 OnClickListener clickball=new OnClickListener() {

        @Override
        public void onClick(View v) {
            score=scorenumber.nextInt(8);
            id=v.getId();

                       if(id==R.id.ball2)
            {
                ball2.setText(score);
            }
            else if(id==R.id.ball3)
            {
                ball3.setText(score);
            }
 }

Ответы [ 2 ]

0 голосов
/ 03 июня 2011

Вы звоните void setText (int resid) здесь. Это приведет к сбою, когда Android не найдет строковый ресурс с тем же идентификатором, что и содержимое переменной score. Используйте setText(Integer.toString(score));.

0 голосов
/ 03 июня 2011

Прежде всего, я склонен использовать атрибут onClick в моих документах XML. Это не значит, что вы должны это делать, но я обнаружил, что это делает мой код аккуратнее.

android:onClick="button"

Так что мой Java будет выглядеть так, чтобы запустить мой метод.

public void button(View v){
    //Stuff goes here.
}

Я говорю это только потому, что думаю, что ваша кнопка сломана. Попробуйте сделать что-нибудь еще. Как подсчитать с 1. Если не получится, значит, кнопка плохая. Если это работает, значит что-то не так с вашим кодом для случайных чисел. Что я не могу понять, что вы пытаетесь сделать.

По этому поводу. Где вы берете ball3 и ball2? Когда их набирает количество очков?

...