Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Alxndrr
1 / 1 / 0
Регистрация: 29.11.2014
Сообщений: 16
1

Ошибка при нажатии на кнопку

15.05.2015, 19:22. Просмотров 1007. Ответов 2
Метки нет (Все метки)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package ru.test.gthen;
 
import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import java.util.Random;
import android.content.*;
import javax.security.auth.*;
 
public class GameActivity extends Activity
{
    private Integer Number;
    private Integer Repeats;
    
    public void setNum(Integer v)
    {
        this.Number = v;
        this.Repeats = 0;
    }
    public void increaseRepeats()
    {
        this.Repeats++;
    }
    public Integer getNum()
    {
        return this.Number;
    }
    public Integer getRepeats()
    {
        return this.Repeats;
    }
    
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game);
        InitGame();
    }
 
    protected void InitGame()
    {
        Random rnd = new Random();
        setNum(rnd.nextInt(10) + 1);
        Button ggr = (Button) findViewById(R.id.gameGr);
        ggr.setOnClickListener(new View.OnClickListener()
        {
                @Override
                public void onClick(View p1)
                {
                    chkUNum();
                }
        });
    }
    
    private void chkUNum()
    {
        EditText uNum = (EditText) findViewById(R.id.gameEnteredNum);
        String un = uNum.toString();
        if(Integer.parseInt(un)==getNum())
        {
            String rstr = String.format(getString(R.string.uWin),getRepeats());
            TextView us = (TextView) findViewById(R.id.statusText);
            us.setText(rstr);
        }
        else
        {
            increaseRepeats();
        }
    }
}
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:gravity="center">
 
    <TextView
        android:layout_height="wrap_content"
        android:text="@string/gameStrtdHint"
        android:layout_width="wrap_content"/>
 
    <TextView
        android:layout_height="wrap_content"
        android:text="@string/gameStrtdInfo"
        android:layout_width="wrap_content"/>
 
    <EditText
        android:layout_height="wrap_content"
        android:inputType="number"
        android:ems="10"
        android:layout_width="wrap_content"
        android:id="@+id/gameEnteredNum"/>
 
    <Button
        android:layout_height="wrap_content"
        style="?android:attr/buttonStyleSmall"
        android:text="@string/gameNextBtn"
        android:layout_width="wrap_content"
        android:id="@+id/gameGr"/>
 
    <TextView
        android:layout_height="wrap_content"
        android:text="@string/status"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:layout_width="wrap_content"
        android:id="@+id/statusText"/>
 
</LinearLayout>
При нажатии на кнопку приложение вылетает. В чём может быть проблема?
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2015, 19:22
Ответы с готовыми решениями:

"В приложении произошла ошибка" при нажатии на кнопку перехода на какую-либо активность
Нужно было несколько функций в одно приложение соединить..Отдельно каждая из них как отдельная...

При нажатии на кнопку выходит ошибка "Attempting to invoke method on a null object reference"
Доброго дня! Есть вот этот код. При нажатии на кнопку Add выдает Attempting to invoke interface...

Закрыть приложение при нажатии на кнопку
Народ сильно не ругайте, не могу вспомнить как что указать, чтобы при нажатии на кнопку приложение...

Вылетает приложение при нажатии на кнопку
Здравствуйте, столкнулся с проблемой, что при нажатии на кнопку приложение вылетает. Программирую в...

Разделить кнопку на части при нажатии
Есть библиотека https://android-arsenal.com/details/1/702#!descri.. которая делает кнопку которая...

2
Mikalai
266 / 242 / 96
Регистрация: 11.01.2015
Сообщений: 673
15.05.2015, 20:20 2
Лучший ответ Сообщение было отмечено Alxndrr как решение

Решение

Выложи лог ошибки

Добавлено через 17 минут
if(Integer.parseInt(un)==getNum()) - java.lang.NumberFormatException

getNum() - возвращает Integer. это объект и его ты сравниваешь м примитивом int

Добавлено через 10 минут
Я сам не прав.)) Ошибка выше. - String un = uNum.toString();
Нужно не так текст забирать, а так:
Java
1
String un = uNum.getText().toString();
1
Alxndrr
1 / 1 / 0
Регистрация: 29.11.2014
Сообщений: 16
15.05.2015, 20:27  [ТС] 3
Ошибка была и там, и там. Спасибо
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2015, 20:27

При нажатии на кнопку приложение закрывается
Здравствуйте. Возникла проблема и вот не знаю как решить. Запускал приложение на эмуляторе, все...

При нажатии на кнопку следующий @string/xxxx
Как сделать так, что бы при нажатии на кнопку значение текста TextView присваивался следующему...

Обновление данных Activity при нажатии на кнопку
Приветствую всех. Проблема такая: необходимо обновлять данные(ImageView, TextView и т.п.) в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru