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

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

Войти
Регистрация
Восстановить пароль
 
supermax74
0 / 0 / 0
Регистрация: 25.12.2015
Сообщений: 12
#1

Обращение к NULL TextView - Программирование Android

04.11.2016, 16:24. Просмотров 244. Ответов 5

У меня есть TextView описанный в XML в GridLayout. И есть ListView который этими GridLayout и заполняется.
Возникает исключение. Обращение к null элементу. Как это исправить?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public View getView(int position, View convertView, ViewGroup parent) {
        View rowView = mInflater.inflate(R.layout.listelement, parent, false);
        try {
 
            TextView titleTextView = (TextView) rowView.findViewById(R.id.title);
            TextView adressTextView = (TextView) rowView.findViewById(R.id.address);
            TextView descTextView = (TextView) rowView.findViewById(R.id.desc);
            ImageView imageImageView = (ImageView) rowView.findViewById(R.id.image);
            Sight sight = (Sight) getItem(position);
 
            Log.i("getview",(String) titleTextView.getText());
 
            titleTextView.setText(sight.Name);
            descTextView.setText(sight.Desc);
            adressTextView.setText(sight.Adress);
            Picasso.with(mContext).load(sight.ImageURL).placeholder(R.mipmap.ic_launcher).into(imageImageView);
 
 
        } catch (Exception e) {
            Log.e("getView","Exeption: " + e.getMessage());
        }
        return rowView;
    }
Вот ListElement.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
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:layout_gravity="center"
    android:columnCount="2"
    android:orientation="horizontal"
    android:padding="10dp"
    android:onClick="onListClk">
    <ImageView
        android:contentDescription="@string/picture"
        android:src="@drawable/muzey"
        android:layout_rowSpan="3"
        android:scaleType="centerCrop"
        android:layout_width="180dp"
        android:id="@+id/image"
        android:layout_height="100dp" />
    <TextView
        android:text="@string/title"
        android:layout_gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/title"
        android:textSize="24sp" />
    <TextView
        android:text="@string/distance"
        android:layout_gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/distance" />
    <TextView
        android:text="@string/address"
        android:layout_gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/address" />
    <TextView
        android:text="@string/desc"
        android:layout_gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/desc" />
</GridLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2016, 16:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обращение к NULL TextView (Программирование Android):

Обращение к textView из другого класса (не MainActivity) в AndroidStudio - Программирование Android
Добрый вечер, у меня такой вопрос. В MainActivity можно обращаться к объектам, а если в другом классе требуется, допустим, найти объект...

Как реализовать обращение из SurfacView к TextView в основной Активити - Программирование Android
Всем Добрый День! Не знаю правильно или нет, но хотел сделать разметку поделив экран на две области, нижняя область отображает графику, в...

Текст из TextView перенести в другой TextView по нажатию Button - Программирование Android
Люди, помогите плиз. Недавно начал ковырять программирование под Android. Хотел сделать банальную вещь - текст из TextView перенести в...

TextView txt = new TextView(this); - ошибка - Программирование Android
Возникла проблема с динамическим создание TextView в цыкле, хотя в другом месте создается таким же образом все нормально TextView txt =...

TextView бд - Программирование Android
Подскажите можно ли на прямую вызвать из бд в TextView текст?

Вывод в textView из БД - Программирование Android
У меня есть БД public void onCreate(SQLiteDatabase db) { // создаем таблицу с полями db.execSQL(&quot;create table mystudent (&quot;...

5
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
04.11.2016, 16:31 #2
от бы еще лог ошибки видеть
0
supermax74
0 / 0 / 0
Регистрация: 25.12.2015
Сообщений: 12
04.11.2016, 16:44  [ТС] #3
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.supermax74.malachiteroad, PID: 16852
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.CharSequence android.widget.TextView.getText()' on a null object reference
at com.supermax74.malachiteroad.SightAdapter$override.getView(SightAdapter.java:49)
at com.supermax74.malachiteroad.SightAdapter$override.access$dispatch(SightAdapter.java)
at com.supermax74.malachiteroad.SightAdapter.getView(SightAdapter.java:0)
at android.widget.AbsListView.obtainView(AbsListView.java:2405)
at android.widget.ListView.makeAndAddView(ListView.java:1909)
at android.widget.ListView.fillDown(ListView.java:723)
at android.widget.ListView.fillFromTop(ListView.java:784)
at android.widget.ListView.layoutChildren(ListView.java:1712)
at android.widget.AbsListView.onLayout(AbsListView.java:2201)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.support.v7.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:437)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2680)
at android.view.View.layout(View.java:16833)
at android.view.ViewGroup.layout(ViewGroup.java:5438)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2474)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2131)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1233)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6552)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:919)
at android.view.Choreographer.doCallbacks(Choreographer.java:710)
at android.view.Choreographer.doFrame(Choreographer.java:645)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:905)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5582)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
0
vindigo
20 / 20 / 3
Регистрация: 15.05.2014
Сообщений: 80
04.11.2016, 20:43 #4
В коде вроде все верно и логично.
Вот только, насколько я помню, этот каст - (String) нужно применять именно к объектам String, а вот getText возвращает CharSequence. Попробуйте titleTextView.getText().toString()
1
shavuz
111 / 117 / 23
Регистрация: 29.01.2014
Сообщений: 584
06.11.2016, 11:30 #5
Log.i("getview",(String) titleTextView.getText()); Надо поменять на: Log.i("getview",""+ titleTextView.getText()); так будеть работать
0
supermax74
0 / 0 / 0
Регистрация: 25.12.2015
Сообщений: 12
11.01.2017, 14:39  [ТС] #6
Нашел у себя ошибку сам. Просто студия решила сделать два файла XML (для горизонтальной и вертикальной ориентации) и финальные правки я делал в вертикальном а элементы брались с горизонтальной.
0
11.01.2017, 14:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2017, 14:39
Привет! Вот еще темы с ответами:

TextView // крэш - Программирование Android
Здравствуйте! С Новым Годом! И вопрос: почему он крашится? Если удалить/закомментировать строку TextView txt =...

TextView и картинкака - Программирование Android
Доброго времени. есть вот такой код: &lt;LinearLayout android:layout_width=&quot;match_parent&quot; ...

Видимость TextView - Программирование Android
Здравствуйте. Имеется класс public class LoadMessages extends AsyncTask&lt;Void, Void, String&gt; { String JSON_STRING,json_url; ...

Прыжок к TextView - Программирование Android
На лаяуте имеется множество textView. интересует прыжок к выбранному textView через актионбар (три точки в верхнем правом углу). ...


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

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

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