Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
Dmitriy505
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 42
1

Приложение вылетает после перехода на второе активити

10.09.2015, 09:43. Просмотров 2628. Ответов 8
Метки нет (Все метки)

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

Код главного активити
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
73
74
75
76
77
78
79
package com.delyanka.help_the_farmer;
 
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.MenuItem;
 
 
public class MainActivity extends AppCompatActivity {
 
    private DrawerLayout mDrawerLayout;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
 
        final ActionBar ab = getSupportActionBar();
        ab.setHomeAsUpIndicator(R.drawable.ic_menu);
        ab.setDisplayHomeAsUpEnabled(true);
 
        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
 
        NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        if (navigationView != null) {
            setupDrawerContent(navigationView);
        }
 
    }
 
       @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                mDrawerLayout.openDrawer(GravityCompat.START);
                return true;
        }
        return super.onOptionsItemSelected(item);
    }
 
       private void setupDrawerContent(NavigationView navigationView) {
        navigationView.setNavigationItemSelectedListener(
                new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(MenuItem menuItem) {
                int id = menuItem.getItemId();
 
               switch (id){
                    case R.id.nav_optimized:
                        Intent intent = new Intent(MainActivity.this, OptimizedActivity.class);
                        intent.putExtra(OptimizedActivity.EXTRA_NAME, R.string.title_activity_optimized);
                        startActivity(intent);
                        break;
 
                    case R.id.nav_about:
                        Intent about = new Intent(MainActivity.this, TheAboutActivity.class);
                        about.putExtra(TheAboutActivity.EXTRA_NAME, R.string.title_activity_about);
                        startActivity(about);
                        break;
                    case R.id.system_exit:
                        System.exit(0);
                        break;
                }
                return true;
            }
        });
 
    }
 
 
}
Код второго активити

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
package com.delyanka.help_the_farmer;
 
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
 
public class TheAboutActivity extends AppCompatActivity {
 
    public static final String EXTRA_NAME = "about_name";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.the_about);
 
 
        Intent about = getIntent();
        final String aboutName = about.getStringExtra(EXTRA_NAME);
 
        final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        toolbar.setTitle(aboutName);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
 
 
 
 
 
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_the_about, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.the_about_close) {
            finish();
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
 
}
Тело второго активити
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
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<?xml version="1.0" encoding="utf-8"?>
 
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/main_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">
 
    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
        android:fitsSystemWindows="true">
 
 
            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
                app:layout_collapseMode="pin" />
 
 
    </android.support.design.widget.AppBarLayout>
 
    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">
 
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:paddingTop="24dp">
 
            <android.support.v7.widget.CardView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_margin="@dimen/card_margin">
 
                <LinearLayout
                    style="@style/Widget.CardContent"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
 
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/version_about"
 
                        android:textAppearance="@style/TextAppearance.AppCompat.Title" />
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
 
                        android:textColor="#8e0001"
                        android:id="@+id/text" />
 
 
                </LinearLayout>
 
            </android.support.v7.widget.CardView>
 
            <android.support.v7.widget.CardView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="@dimen/card_margin"
                android:layout_marginLeft="@dimen/card_margin"
                android:layout_marginRight="@dimen/card_margin">
 
                <LinearLayout
                    style="@style/Widget.CardContent"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
 
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/whots_new"
                        android:textAppearance="@style/TextAppearance.AppCompat.Title" />
 
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/whots_new_telo"
                        android:textColor="#388E3C" />
 
                </LinearLayout>
 
            </android.support.v7.widget.CardView>
 
            <android.support.v7.widget.CardView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="@dimen/card_margin"
                android:layout_marginLeft="@dimen/card_margin"
                android:layout_marginRight="@dimen/card_margin">
 
                <LinearLayout
                    style="@style/Widget.CardContent"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
 
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/suite"
                        android:textAppearance="@style/TextAppearance.AppCompat.Title" />
 
                    <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:text="@string/suite_telo"
 
                        android:id="@+id/sait"
 
                        android:autoLink="web"/>
 
 
                </LinearLayout>
 
            </android.support.v7.widget.CardView>
 
        </LinearLayout>
 
    </android.support.v4.widget.NestedScrollView>
 
    <!--<android.support.design.widget.FloatingActionButton
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        app:layout_anchor="@id/appbar"
        app:layout_anchorGravity="bottom|right|end"
        android:src="@drawable/ic_discuss"
        android:layout_margin="@dimen/fab_margin"
        android:clickable="true"/>-->
 
</android.support.design.widget.CoordinatorLayout>
При такой расладке все отлично работает и переходит. НО как только я прописываю код во втором окне
Java
1
2
TextView text = (TextView) findViewById(R.id.text);
        text.setText("2");
для вывода текста в TextView происходит вылет программы.
Вот лог
HTML5
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
09-09 23:33:17.205  19523-19523/com.delyanka.help_the_farmer E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.delyanka.help_the_farmer/com.delyanka.help_the_farmer.TheAboutActivity}: java.lang.NullPointerException
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
            at com.delyanka.help_the_farmer.TheAboutActivity.onCreate(TheAboutActivity.java:20)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
************at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
************at android.app.ActivityThread.access$600(ActivityThread.java:123)
************at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
************at android.os.Handler.dispatchMessage(Handler.java:99)
************at android.os.Looper.loop(Looper.java:137)
************at android.app.ActivityThread.main(ActivityThread.java:4424)
************at java.lang.reflect.Method.invokeNative(Native Method)
************at java.lang.reflect.Method.invoke(Method.java:511)
************at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
************at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
************at dalvik.system.NativeStart.main(Native Method)
09-09 23:33:17.675  19523-19530/com.delyanka.help_the_farmer I/dalvikvm﹕ threadid=3: reacting to signal 3
09-09 23:33:17.675  19523-19530/com.delyanka.help_the_farmer I/dalvikvm﹕ Wrote stack traces to '/data/anr/traces.txt'
09-09 23:33:17.725  19523-19530/com.delyanka.help_the_farmer I/dalvikvm﹕ threadid=3: reacting to signal 3
09-09 23:33:17.725  19523-19530/com.delyanka.help_the_farmer I/dalvikvm﹕ Wrote stack traces to '/data/anr/traces.txt'
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.09.2015, 09:43
Ответы с готовыми решениями:

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

Приложение вылетает на этапе перехода на другой экран
Делаю приложения для android в android studio. Есть два экрана - MainActivity и WebView. Launch и...

Открыть второе активити
Я перехожу с ативити MainActivity в LastActivity так: package com.example.serg.myapplication; ...

Приложение вылетает после 2х часов работы
Приложение работает стабильно часа 2 после 2х или 3х часов работы выходит ошибка на телефоне и...

Сделать кнопку перехода на другое активити
Есть текст хочу добавить кнопку,чтобы она переключала на другое активити и там было видео или...

8
Ranny
0 / 0 / 0
Регистрация: 29.07.2015
Сообщений: 10
10.09.2015, 10:05 2
Java
1
2
TextView text = (TextView) findViewById(R.id.text);
        text.setText("2");
в какое место вставляешь? у тебя text= null, возможно что ты вставляешь это до
setContentView(R.layout.the_about); поэтому он не может найти твой textView, и соответственно срабатывает NullPointerException когда ты пытаешься вызвать text.setText()
0
Dmitriy505
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 42
10.09.2015, 10:11  [ТС] 3
Вставляю после
Java
1
2
3
4
 final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        toolbar.setTitle(aboutName);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

Причем если сделать все тоже самое но на главном активити, то все отрабатывает нормально



И на этом активити не отрабатывает кнопка почему то на ссылку. цветом выделяется но кликается
0
Pablito
2863 / 2275 / 768
Регистрация: 12.05.2014
Сообщений: 7,978
Завершенные тесты: 1
10.09.2015, 10:16 4
что ты сказки рассказываешь?
у тебя явно в ошибке указывает на строку 20 в onCreate, а это
Java
1
Intent about = getIntent();
0
10.09.2015, 10:16
Dmitriy505
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 42
10.09.2015, 10:25  [ТС] 5
Если ты правильно прочитал сначала. То это код второго активити я указал чистый без определения TextView.

Вот так тебе понятнее будет.

Код с определением TextView
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
package com.delyanka.help_the_farmer;
 
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
 
public class TheAboutActivity extends AppCompatActivity {
 
    public static final String EXTRA_NAME = "about_name";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.the_about);
 
        Intent about = getIntent();
        final String aboutName = about.getStringExtra(EXTRA_NAME);
 
        final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        toolbar.setTitle(aboutName);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
 
        TextView text = (TextView) findViewById(R.id.text);
        text.setText("2");
 
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_the_about, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.the_about_close) {
            finish();
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
 
}
И лог ошибки
HTML5
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
09-10 07:22:43.059    5769-5769/com.delyanka.help_the_farmer E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.delyanka.help_the_farmer/com.delyanka.help_the_farmer.TheAboutActivity}: java.lang.NullPointerException
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
            at com.delyanka.help_the_farmer.TheAboutActivity.onCreate(TheAboutActivity.java:29)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
************at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
************at android.app.ActivityThread.access$600(ActivityThread.java:123)
************at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
************at android.os.Handler.dispatchMessage(Handler.java:99)
************at android.os.Looper.loop(Looper.java:137)
************at android.app.ActivityThread.main(ActivityThread.java:4424)
************at java.lang.reflect.Method.invokeNative(Native Method)
************at java.lang.reflect.Method.invoke(Method.java:511)
************at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
************at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
************at dalvik.system.NativeStart.main(Native Method)
09-10 07:22:43.540    5769-5776/com.delyanka.help_the_farmer I/dalvikvm﹕ threadid=3: reacting to signal 3
09-10 07:22:43.540    5769-5776/com.delyanka.help_the_farmer I/dalvikvm﹕ Wrote stack traces to '/data/anr/traces.txt'
09-10 07:22:43.589    5769-5776/com.delyanka.help_the_farmer I/dalvikvm﹕ threadid=3: reacting to signal 3
09-10 07:22:43.589    5769-5776/com.delyanka.help_the_farmer I/dalvikvm﹕ Wrote stack traces to '/data/anr/traces.txt'
09-10 07:22:45.909    5769-5769/? I/Process﹕ Sending signal. PID: 5769 SIG: 9
Теперь строки ошибок видно? Я что дурак по твоему. и не вижу на какую строку ссылается ошибка. Я и хочу понять почему на нее ссылается.
0
Vladimir93
78 / 77 / 14
Регистрация: 28.06.2015
Сообщений: 322
10.09.2015, 11:46 6
А вот этот текст почему вверх тормашками?
XML
1
2
3
4
5
6
  <TextView
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
 
                        android:textColor="#8e0001"
                        android:id="@+id/text" />
0
Pablito
2863 / 2275 / 768
Регистрация: 12.05.2014
Сообщений: 7,978
Завершенные тесты: 1
10.09.2015, 11:50 7
вангую - есть еще папка с landscape лаяутом и там лежит такой же файл разметки, но в нем нет TextView с id="text"
0
Vladimir93
78 / 77 / 14
Регистрация: 28.06.2015
Сообщений: 322
10.09.2015, 11:53 8
Да и поля текст нет.
0
Dmitriy505
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 42
10.09.2015, 12:25  [ТС] 9
Цитата Сообщение от Паблито Посмотреть сообщение
вангую - есть еще папка с landscape лаяутом и там лежит такой же файл разметки, но в нем нет TextView с id="text"
Вот за это спасибо. Я про него совсем и забыл. Он у меня в проекте не показывался, перезапустил Studio и вот он. Спасибо
0
10.09.2015, 12:25
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.09.2015, 12:25

TextView: неправильно работает Listener для перехода на другую активити
Суть такова: есть фрагмент, в нем есть TextView, которое я хочу использовать как линк для перехода...

После ввода текста и перехода на другую ячейку excel вылетает
win 7, office 2013. При попытке создать новый документ, после ввода текста и перехода на другую...

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


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

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

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