Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Frequencies
0 / 0 / 2
Регистрация: 25.09.2011
Сообщений: 49
#1

FATAL EXCEPTION: main - Программирование Android

12.12.2012, 11:22. Просмотров 1466. Ответов 6
Метки нет (Все метки)

добрый день, столкнулся с проблемой, когда выбивает подобную ошибку:

Код
12-12 07:18:22.455: E/AndroidRuntime(1352): FATAL EXCEPTION: main
12-12 07:18:22.455: E/AndroidRuntime(1352): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.skubilov.task_0_timeshift/com.skubilov.task_0_timeshift.MainActivity}: java.lang.NullPointerException
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2106)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread.access$600(ActivityThread.java:141)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.os.Handler.dispatchMessage(Handler.java:99)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.os.Looper.loop(Looper.java:137)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread.main(ActivityThread.java:5039)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at java.lang.reflect.Method.invokeNative(Native Method)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at java.lang.reflect.Method.invoke(Method.java:511)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at dalvik.system.NativeStart.main(Native Method)
12-12 07:18:22.455: E/AndroidRuntime(1352): Caused by: java.lang.NullPointerException
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.Activity.findViewById(Activity.java:1839)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at com.skubilov.task_0_timeshift.MainActivity.<init>(MainActivity.java:14)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at java.lang.Class.newInstanceImpl(Native Method)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at java.lang.Class.newInstance(Class.java:1319)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.Instrumentation.newActivity(Instrumentation.java:1054)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
12-12 07:18:22.455: E/AndroidRuntime(1352): 	... 11 more
Раньше все работало. Решил дома запустить - начало выбивать подобную ошибку. После чего и на работе перестало запускаться

Вот XML:
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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/black"
    android:orientation="vertical"
    tools:context=".MainActivity" >
 
    <TextView
        android:id="@+id/textCurrentDate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="20dp"
        android:text="Исходная дата"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white" />
 
    <TextView
        android:id="@+id/currentDate"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginRight="20dp"
        android:background="@android:color/white"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/black" />
 
    <TextView
        android:id="@+id/textShiftDates"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:text="Сдвиг даты на:"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white" />
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="3pt" >
 
        <TextView
            android:id="@+id/textDays"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:text="Дней"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/white" />
 
        <EditText
            android:id="@+id/days"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:background="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/black" />
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="3pt" >
 
        <TextView
            android:id="@+id/textHours"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:text="Часов"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/white" />
 
        <EditText
            android:id="@+id/hours"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:background="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/black" />
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="3pt" >
 
        <TextView
            android:id="@+id/textMinutes"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:text="Минут"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/white" />
 
        <EditText
            android:id="@+id/minutes"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:background="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/black" />
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="3pt" >
 
        <TextView
            android:id="@+id/textSeconds"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:text="Секунд"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/white" />
 
        <EditText
            android:id="@+id/seconds"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:background="@android:color/white"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@android:color/black" />
    </LinearLayout>
 
    <Button
        android:id="@+id/buttonRun"
        android:layout_width="110dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="5pt"
        android:background="@android:color/white"
        android:onClick="onClick"
        android:text="Выполнить"
        android:textColor="@android:color/black" />
 
    <TextView
        android:id="@+id/textResultingDate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="3pt"
        android:text="Результирующая дата:"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/white" />
 
    <TextView
        android:id="@+id/resultingDate"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:layout_marginRight="20dp"
        android:layout_marginTop="3pt"
        android:background="@android:color/white"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@android:color/black" />
 
</LinearLayout>
и сам код:

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
package com.skubilov.task_0_timeshift;
 
import java.text.SimpleDateFormat;
import java.util.Calendar;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
 
public class MainActivity extends Activity implements OnClickListener {
 
    TextView current = (TextView) findViewById(R.id.currentDate);
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Calendar c = Calendar.getInstance();
        SimpleDateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
        String formattedDate = df.format(c.getTime());
        current.setText(formattedDate);
    }
 
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {
        case R.id.buttonRun:
            TextView resultingDate = (TextView) findViewById(R.id.resultingDate);
 
            resultingDate.setText("lol");
            break;
 
        default:
            break;
        }
    }
 
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2012, 11:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос FATAL EXCEPTION: main (Программирование Android):

Fatal Exception: main - Программирование Android
Здравствуйте, пишу свое первое приложение, помогите пожалуйста. Проблема в том, что в коде никаких ошибок не отображается, а когда проверяю...

FATAL EXCEPTION: main - Программирование Android
Вот код: import com.independentsoft.exchange.Service; import android.app.Activity; import android.os.Bundle; public class...

FATAL EXCEPTION: main - Программирование Android
Пишу свое 1 приложение, столкнулся с проблемой. при загрузке FATAL ERROR и все тут. Помогите что делать ? Вот код *.java package...

FATAL EXCEPTION: main - Программирование Android
Забавная у меня ситуация, вот создаю новый проект и он не хочет запускаться ни в какую, хотя ничего своего не добавляю в него ...

FATAL EXCEPTION: main - Программирование Android
Я только начал проходить уроки по программированию на android и сразу же ошибка - unfortunately, MyProject has stopped. Я пытался добавить...

FATAL EXCEPTION: main - Программирование Android
Всем привет. Не получается программка из урока с передачей данных из одного активити в другое. Уже третий день туплю, но не могу исправить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
AppDevIL
3 / 3 / 0
Регистрация: 03.12.2012
Сообщений: 6
12.12.2012, 14:38 #2
тут все написано:
Код
12-12 07:18:22.455: E/AndroidRuntime(1352): Caused by: java.lang.NullPointerException
12-12 07:18:22.455: E/AndroidRuntime(1352):     at android.app.Activity.findViewById(Activity.java:1839)
12-12 07:18:22.455: E/AndroidRuntime(1352):     at com.skubilov.task_0_timeshift.MainActivity.<init>(MainActivity.java:14)
вылетает на 14 строке активити потому что возращает null. Оно не может найти данное R.id.currentDate.

Если я правильно помню то до того как закончилась инициализация(onCreate функция) всех данных в таблице R не существует.
Поменять код в активити на:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class MainActivity extends Activity implements OnClickListener {
 
    TextView current;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Calendar c = Calendar.getInstance();
        SimpleDateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
        String formattedDate = df.format(c.getTime());
        current = (TextView)findViewById(R.id.currentDate);
        current.setText(formattedDate);
    }
 
}
т.е ты только объявляешь current Textview, а саму инициализацию делаешь после того как запустилась super.onCreate(savedInstanceState).
1
Frequencies
0 / 0 / 2
Регистрация: 25.09.2011
Сообщений: 49
12.12.2012, 14:46  [ТС] #3
AppDevIL, огромное спасибо, все теперь работает
0
AppDevIL
3 / 3 / 0
Регистрация: 03.12.2012
Сообщений: 6
12.12.2012, 14:53 #4
еще я бы не писала все эти инициализации в функции onCreate, а прооверлоадила функцию

Java
1
2
3
4
@Override
    public void onStart() {
        super.onStart();
    }
и уже в ней писала нужное. Как-то переменные и изменения данных ближе к запуску, а не созданию Activity.
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
12.12.2012, 22:52 #5
AppDevIL, почитайте о жизненном цикле активити и не советуйте глупости всякие.
0
AppDevIL
3 / 3 / 0
Регистрация: 03.12.2012
Сообщений: 6
12.12.2012, 23:27 #6
Ок.
А что делать если апликация ушла на задний план(onStop), а после этого процесс не был убит? Я говорю о ситуации в которой из onStop, активити переходит в onStart, а не onCreate.
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
12.12.2012, 23:46 #7
вот именно, активити не была убита, так зачем повторно инициализировать переменные...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2012, 23:46
Привет! Вот еще темы с ответами:

E/AndroidRuntime: FATAL EXCEPTION: main - Программирование Android
я не могу понять в чем дело .... если можно объясните... сразу признаюсь я начинающий программист ...

E/AndroidRuntime: FATAL EXCEPTION: main - Программирование Android
Первый раз пишу приложение. сроки поджимают ) вот код main_activity.java package com.example.mytunerpro.mytunerpro; import...

FATAL EXCEPTION: main - проклятая ошибка - Программирование Android
Здравствуйте, в Android Studio ошибок не показывает, но при запуске программы на телефоне выходит такая ошибка 02-19 23:00:53.068...

FATAL EXCEPTION: main java.lang.NullPointerException - Программирование Android
Помогите есть исходный код package com.br.br; import android.content.Intent; import android.graphics.Bitmap; import...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.12.2012, 23:46
Ответ Создать тему
Опции темы

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