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

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

Войти
Регистрация
Восстановить пароль
 
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
#1

Использование ListView заканчивается падением приложения - Программирование Android

20.02.2014, 22:34. Просмотров 571. Ответов 6
Метки нет (Все метки)

Все заканчивается крэшем. Можно ли так использовать ListView? Чувствую себя каким-то садистом
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
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >
 
    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
 
        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
 
            <LinearLayout
                android:id="@+id/tr1ll1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
 
            <LinearLayout
                android:id="@+id/tr1ll2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
 
            <LinearLayout
                android:id="@+id/tr1ll3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
        </TableRow>
 
        <TableRow
            android:id="@+id/tableRow2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
 
            <LinearLayout
                android:id="@+id/tr2ll1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
 
            <LinearLayout
                android:id="@+id/tr2ll2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
 
            <LinearLayout
                android:id="@+id/tr2ll3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
 
            </LinearLayout>
 
        </TableRow>
    </TableLayout>
 
</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
43
44
45
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.LinearLayout;
import android.widget.ListView;
 
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        LinearLayout tr1ll1 = (LinearLayout) findViewById(R.id.tr1ll1);
        LinearLayout tr1ll2 = (LinearLayout) findViewById(R.id.tr1ll2);
        LinearLayout tr1ll3 = (LinearLayout) findViewById(R.id.tr1ll3);
        LinearLayout tr2ll1 = (LinearLayout) findViewById(R.id.tr2ll1);
        LinearLayout tr2ll2 = (LinearLayout) findViewById(R.id.tr2ll2);
        LinearLayout tr2ll3 = (LinearLayout) findViewById(R.id.tr2ll3);
        
        ListView[] lview = new ListView[6];
        
        final String[] names = new String[] {
                "Top", "Mid", "Down"            
            };
        
        tr1ll1.addView(lview[0]);
        tr1ll2.addView(lview[1]);
        tr1ll3.addView(lview[2]);
        tr2ll1.addView(lview[3]);
        tr2ll2.addView(lview[4]);
        tr2ll3.addView(lview[5]);
        
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1, names);
        lview[0].setAdapter(adapter);
        lview[1].setAdapter(adapter);
        lview[2].setAdapter(adapter);
        lview[3].setAdapter(adapter);
        lview[4].setAdapter(adapter);
        lview[5].setAdapter(adapter);
        
    }
    
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2014, 22:34     Использование ListView заканчивается падением приложения
Посмотрите здесь:
Кастомизация ListView и использование Sticky Header Android
Android Фон приложения (использование nine9patch)
Android При загрузке большого количества картинок библиотекой Picasso заканчивается память
Как получить текст из окна приложения перед его "падением" ? C++ WinAPI
Зависание пк с падением изображения и звука
Прыжок со свободном падением| Delphi Delphi
C# Использование ListView
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dr_yand
156 / 138 / 6
Регистрация: 13.03.2013
Сообщений: 321
Записей в блоге: 3
21.02.2014, 00:28     Использование ListView заканчивается падением приложения #2
Ошибка NullPointerException?
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
21.02.2014, 06:26  [ТС]     Использование ListView заканчивается падением приложения #3
LogCat
Кликните здесь для просмотра всего текста
02-21 02:24:23.698: D/AndroidRuntime(361): Shutting down VM
02-21 02:24:23.698: W/dalvikvm(361): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
02-21 02:24:23.718: E/AndroidRuntime(361): FATAL EXCEPTION: main
02-21 02:24:23.718: E/AndroidRuntime(361): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.table_test/com.example.table_test.MainActivity}: java.lang.NullPointerException
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.os.Handler.dispatchMessage(Handler.java:99)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.os.Looper.loop(Looper.java:123)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread.main(ActivityThread.java:4627)
02-21 02:24:23.718: E/AndroidRuntime(361): at java.lang.reflect.Method.invokeNative(Native Method)
02-21 02:24:23.718: E/AndroidRuntime(361): at java.lang.reflect.Method.invoke(Method.java:521)
02-21 02:24:23.718: E/AndroidRuntime(361): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-21 02:24:23.718: E/AndroidRuntime(361): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-21 02:24:23.718: E/AndroidRuntime(361): at dalvik.system.NativeStart.main(Native Method)
02-21 02:24:23.718: E/AndroidRuntime(361): Caused by: java.lang.NullPointerException
02-21 02:24:23.718: E/AndroidRuntime(361): at android.view.ViewGroup.addView(ViewGroup.java:1815)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.view.ViewGroup.addView(ViewGroup.java:1802)
02-21 02:24:23.718: E/AndroidRuntime(361): at com.example.table_test.MainActivity.onCreate(MainActivity.java:29)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-21 02:24:23.718: E/AndroidRuntime(361): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
02-21 02:24:23.718: E/AndroidRuntime(361): ... 11 more


Console
Кликните здесь для просмотра всего текста
[2014-02-21 08:23:57 - table_test] ------------------------------
[2014-02-21 08:23:57 - table_test] Android Launch!
[2014-02-21 08:23:57 - table_test] adb is running normally.
[2014-02-21 08:23:57 - table_test] Performing com.example.table_test.MainActivity activity launch
[2014-02-21 08:24:02 - table_test] Application already deployed. No need to reinstall.
[2014-02-21 08:24:02 - table_test] Starting activity com.example.table_test.MainActivity on device emulator-5554
[2014-02-21 08:24:03 - table_test] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.table_test/.MainActivity }
[2014-02-21 08:24:08 - table_test] ------------------------------
[2014-02-21 08:24:08 - table_test] Android Launch!
[2014-02-21 08:24:08 - table_test] adb is running normally.
[2014-02-21 08:24:08 - table_test] Performing com.example.table_test.MainActivity activity launch
[2014-02-21 08:24:10 - table_test] Application already deployed. No need to reinstall.
[2014-02-21 08:24:10 - table_test] Starting activity com.example.table_test.MainActivity on device emulator-5554
[2014-02-21 08:24:12 - table_test] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.table_test/.MainActivity }
[2014-02-21 08:24:19 - table_test] ------------------------------
[2014-02-21 08:24:19 - table_test] Android Launch!
[2014-02-21 08:24:19 - table_test] adb is running normally.
[2014-02-21 08:24:19 - table_test] Performing com.example.table_test.MainActivity activity launch
[2014-02-21 08:24:21 - table_test] Application already deployed. No need to reinstall.
[2014-02-21 08:24:21 - table_test] Starting activity com.example.table_test.MainActivity on device emulator-5554
[2014-02-21 08:24:23 - table_test] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.table_test/.MainActivity }
angryrobot
Командир зеленых роботов
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 564
21.02.2014, 10:17     Использование ListView заканчивается падением приложения #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от tolya1095 Посмотреть сообщение
Все заканчивается крэшем.
Вот эта строчка
Java
1
ListView[] lview = new ListView[6];
создает массив из шести элементов каждый из которых - null. Массив надо сначала заполнить прежде чем с ним работать.
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
21.02.2014, 12:12  [ТС]     Использование ListView заканчивается падением приложения #5
В вашем ответе есть логика, но я не понимаю. Создаю listview. Присваиваю listview к tablerow. Дальше расписываю адаптер. Адаптер присваиваю к listview. Т.е. в тот момент, когда я присвоил адаптер к listview, listview должен был заполниться?
verylazy
Заблокирован
21.02.2014, 12:25     Использование ListView заканчивается падением приложения #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
angryrobot, правильно говорит, вот в этих строках ниже получается, что вы пытаетесь добавить какие-то листвью из массива
массив объявлен, а где же сами листвью? их пока что нет, не созданы, вместо них в массиве записаны null
Java
1
2
3
4
5
6
tr1ll1.addView(lview[0]);
tr1ll2.addView(lview[1]);
tr1ll3.addView(lview[2]);
tr2ll1.addView(lview[3]);
tr2ll2.addView(lview[4]);
tr2ll3.addView(lview[5]);
не уверен, что получится, нет под рукой IDE что бы проверить, но можно добавить пару строк и посмотреть что будет
Java
1
2
3
4
ListView[] lview = new ListView[6];
for (int i = 0; i < lview.length; i++) {
    lview[i] = new ListView(this);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2014, 15:43     Использование ListView заканчивается падением приложения
Еще ссылки по теме:
C# Использование элемента ListView
C++ Qt Использование ListView без моделей (QML)
C# WPF Использование datatemplate несколько раз в listview
Использование checkbox, radiobutton, numericupdown в listview Visual Basic .NET
Использование DataBinding для изменения содержимого ListView C# WPF

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

Или воспользуйтесь поиском по форуму:
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
21.02.2014, 15:43  [ТС]     Использование ListView заканчивается падением приложения #7
Спасибо. Полчаса назад вспомнил, но не смог отписать. Доберусь до ПК - попробую. Должно сработать

Добавлено через 1 час 34 минуты

Не по теме:

Всем спасибо. Сработало.

Yandex
Объявления
21.02.2014, 15:43     Использование ListView заканчивается падением приложения
Ответ Создать тему
Опции темы

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