С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 27.03.2017
Сообщений: 17

Приложение вылетает в эмуляторе при нажатии кнопки для переключения между активити

04.03.2019, 18:07. Показов 1554. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я сделал обычное переключение между активити в обработчике события для кнопки:
Java
1
2
3
4
  public void onClickLogin (View v) {
        Intent intent = new Intent (MainActivity.this, LoginActivity.class);
        startActivity(intent);
    }
Но при нажатии на эту кнопку в эмуляторе происходит ошибка и приложение вылетает.

Что выводится в логе:
Code
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
2019-03-04 20:38:34.940 3940-3940/com.example.qtest E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.qtest, PID: 3940
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.qtest/com.example.qtest.LoginActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2548)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6077)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
        at android.content.ContextWrapper.getResources(ContextWrapper.java:86)
        at android.view.ContextThemeWrapper.getResourcesInternal(ContextThemeWrapper.java:127)
        at android.view.ContextThemeWrapper.getResources(ContextThemeWrapper.java:121)
        at android.support.v7.app.AppCompatActivity.getResources(AppCompatActivity.java:542)
        at android.content.Context.getString(Context.java:476)
        at com.example.qtest.LoginActivity.<init>(LoginActivity.java:34)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1078)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2538)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)*
        at android.app.ActivityThread.-wrap12(ActivityThread.java)*
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)*
        at android.os.Handler.dispatchMessage(Handler.java:102)*
        at android.os.Looper.loop(Looper.java:154)*
        at android.app.ActivityThread.main(ActivityThread.java:6077)*
        at java.lang.reflect.Method.invoke(Native Method)*
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)*
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)*
Что делать с этим я понятия не имею. Помогите пожалуйста, уже третий день думаю.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.03.2019, 18:07
Ответы с готовыми решениями:

При нажатии на кнопку приложение вылетает
Только начинаю изучать swift и возникла такая проблема: пишу простенькое приложение, на экране три кнопки 1, 2 и 3 при нажатии на кнопку,...

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

Приложение работает на эмуляторе но вылетает на телефоне
Происходит такая ошибка: При тестировании приложении на эмуляторе, все работает так же как и предполагалось, когда устанавливаю на...

5
111 / 89 / 29
Регистрация: 07.01.2017
Сообщений: 456
04.03.2019, 19:43
Паксютов Дмитри, покажи onCreate() в LoginActivity.
0
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
04.03.2019, 23:29
Цитата Сообщение от Паксютов Дмитри Посмотреть сообщение
getResources()' on a null object reference
Надо найти этот метод и исправить.
1
0 / 0 / 0
Регистрация: 27.03.2017
Сообщений: 17
06.03.2019, 16:08  [ТС]
Вот onCreate() в LoginActivity.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
 
        loginLayout = (ConstraintLayout) findViewById(R.id.LoginLayout);
        txNeckName = (EditText) findViewById (R.id.editTxNeckName);
        txPassword = (EditText) findViewById(R.id.editTxPassword);
        txErrorLog = (TextView) findViewById(R.id.textError);
 
        RegLayout = (ConstraintLayout) findViewById(R.id.RegistrationLayout);
        txEmaile = (EditText) findViewById(R.id.editTxEmaile);
        txLogin = (EditText) findViewById(R.id.editTxLogin2);
        txPass1 = (EditText) findViewById(R.id.editTxPassword1);
        txPass2 = (EditText) findViewById(R.id.editTxPassword2);
        txErrorReg = (TextView) findViewById(R.id.textErrorReg);
    }
А вот обработчики для кнопок этой активити если понадобится:
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
 public void onClickLogin (View v) {
        String NeckName = txNeckName.getText().toString();
        String Password = txPassword.getText().toString();
        String json = "{ " + w + "neckname" + w + " : " + w + NeckName + w + ", " + w + "pass" + w + " : " + w + Password + w + " }";
        Log.d("json ", json);
        String Result = postReq.PostRequest("http://192.168.1.214:8080/", json);
        try {
            JSONObject result = new JSONObject(Result);
            Sesseon_id = result.getString ("Session_id");
            txErrorLog.setText ("@string/login");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        try {
            FileOutputStream f = openFileOutput("infUser", MODE_PRIVATE);
            String text = Sesseon_id + " " + NeckName;
            f.write(text.getBytes());
            f.close();
        } catch(IOException ex) {
 
        }
    }
 
    public void OnClickReg (View v) {
        loginLayout.setVisibility(View.GONE);
        RegLayout.setVisibility(View.VISIBLE);
    }
 
    public void OnClickRegistration (View v) {
        String Email = txEmaile.getText().toString();
        String Login = txLogin.getText().toString();
        String pass1 = txPass1.getText().toString();
        String pass2 = txPass2.getText().toString();
        String json;
        String Response;
        JSONObject response;
 
        if (pass1 == pass2) {
            json = "{ " + w + "mail" + w + " : " + w + Email + w + ", " + w + "pass"
                    + w + " : " + w + pass1 + w + ", " + w + "nickname" + " : " + w + " : " + w + Login + w + " }";
            Log.d ("json", json);
            Response = postReq.PostRequest("", json);
            try {
                response = new JSONObject(Response);
                if (response.getString("ResponseType") == "Confirm") {
                    txErrorReg.setText("@string/Confirm");
                } else if (response.getString("ResponseType") == "Error") {
                    txErrorReg.setText(response.getString("Error"));
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        } else {
            txErrorReg.setText("@string/errorPassword");
        }
    }
0
111 / 89 / 29
Регистрация: 07.01.2017
Сообщений: 456
06.03.2019, 16:15
Паксютов Дмитри, что еще в LoginActivity есть? Методы какие?

Добавлено через 2 минуты
Паксютов Дмитри, + поля и прочее.
0
0 / 0 / 0
Регистрация: 03.04.2016
Сообщений: 69
06.03.2019, 17:32
Можете попробовать использовать это:
Java
1
2
3
4
5
6
7
public void onClickLogin (View v) {
 switch (v.getId()){
            case R.id.bButton:// Ваша кнопка         
               startActivity(new Intent(this, LoginActivity.class));
                break;
        }
    }
В методе onCreate добавьте следующее:
Java
1
2
 bButton = (Button)findViewById(R.id.bButton);
        bButton.setOnClickListener(this);
Или же можете использовать это, так же в методе onCreate:
Java
1
2
3
4
5
6
7
8
  bButton = (Button)findViewById(R.id.bButton);
        bButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, LoginActivity.class);
                startActivity(intent);
            }
        });
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.03.2019, 17:32
Помогаю со студенческими работами здесь

Фрагменты: приложение вылетает при 4-ом нажатии на кнопку
Здравствуйте, в фрагменте есть кнопка, при нажатии на неё 3 раза приложение работает, на 4 вылетает, и пишет, что это из-за (View v =...

Приложение вылетает без ошибок(на эмуляторе и на телефоне)
Добрый день! При запуске на эмуляторе или реальном телефоне приложение вылетает без единой ошибки. Что это может быть? (в приложении...

Приложение вылетает после перехода на новое активити
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Программа выдает ошибку и вылетает при переходе на новое активити. В...

Приложение вылетает после перехода на второе активити
Здравствуйте! Помогите разобраться с причиной вылета второго активити. Код главного активити package...

Убить приложение при нажатии кнопки
Здравствуйте. Нужно сделать кнопку выхода из приложения, но так, чтобы оно полностью убивалось, а не висело в списке запущенных приложений....


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru