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

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

Войти
Регистрация
Восстановить пароль
 
mcGurov
3 / 3 / 0
Регистрация: 30.07.2013
Сообщений: 100
#1

ListView и Fragment - Программирование Android

20.06.2015, 21:31. Просмотров 368. Ответов 0
Метки нет (Все метки)

Активность выводит ListView со списком, который добавляет пользователь...
В Активити код работает, переделал под фрагмент, в нем что-то не так, пробовал и Fragment и ListFragment... Эклипс на строки не ругается, но при сборке Source not found. и вылазит подобное ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2059


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
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
import android.content.Intent;
import android.database.Cursor;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.CursorAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.AdapterView.OnItemClickListener;
 
 
 
public class AquaBaseFragment extends ListFragment {    
    
    public static final String ROW_ID = "row_id"; // ключ для передачи в другую
    // активность
private ListView aquariumListView; // встроенный в ListActivity элемент
// ListView
private CursorAdapter contactAdapter; // адаптер для ListView
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {     
        
        View view = inflater.inflate(R.layout.aquarium_list, container, false);
        
        
        aquariumListView = getListView(); // доступ к встроенному ListView
        aquariumListView.setOnItemClickListener(viewContactListener);
        return view;
    }
 
    @Override
    public void onResume() {
        // отображение имени каждого контакта на TextView
                    // в разметке ListView
                    String[] from = new String[] { "name" };
                    int[] to = new int[] { R.id.contactTextView };
                    contactAdapter = new SimpleCursorAdapter(getActivity(),R.layout.contact_list_item, null, from, to);
                    setListAdapter(contactAdapter);
        super.onResume();
 
        // создает новый объект GetContactsTask и вызывает его
        new GetAquariumTask().execute((Object[]) null);
    }
 
    @Override
    public void onStop() {
        Cursor cursor = contactAdapter.getCursor(); // доступ к текущему Cursor
 
        if (cursor != null)
            cursor.deactivate(); // деактивирование
 
        contactAdapter.changeCursor(null); // у адаптера нет Cursor
        super.onStop();
    }
 
    // выполнение запроса к базе данных за пределами потока GUI
    private class GetAquariumTask extends AsyncTask<Object, Object, Cursor> {
        DatabaseConnector databaseConnector = new DatabaseConnector(
                getActivity());
 
        // выполнение доступа к базе данных
        @Override
        protected Cursor doInBackground(Object... params) {
            databaseConnector.open();
 
            // доступ к курсору, включая вызов всех контактов
            return databaseConnector.getAllAquariums();
            
            
        }
 
        // использование Cursor, возвращенного методом doInBackground
        @Override
        protected void onPostExecute(Cursor result) {
            contactAdapter.changeCursor(result); // установка Cursor адаптера
            databaseConnector.close();
            
            
        }
    }
 
 
    // слушатель события, которое отвечает на выбор имени контакта в ListView
    OnItemClickListener viewContactListener = new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // создание Intent для запуска ViewContact Activity
            Intent viewContact = new Intent(getActivity(), ViewAquarium.class);
 
            // передача ID строки выбранного контакта в качестве
            // расширения объекта Intent
            viewContact.putExtra(ROW_ID, arg3);
            startActivity(viewContact); // start the ViewContact Activity
        }
    };
    
    
    
    
    
}
Почему ListView отказывается работать в фрагменте?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2015, 21:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ListView и Fragment (Программирование Android):

Fragment и ListView - Программирование Android
Задача необходимо сделать 2 фрагмента в 1-находится Listview в нем кнопки подгружаемые из файла, во 2 фрагменте описание как сделать так...

Список ListView из Fragment - Программирование Android
Добрый вечер. Вот такой вопрос и помощь ваша очень нужна Вот на скрине я указал все что нужно так примерно. У меня...

JSON из URL в ListView | Fragment - Программирование Android
Здравствуйте! Есть фрагмент показывающий listView. Также есть локальный сайт (http://stat/api/main/) возвращающий Json-массив. Как парсить...

Обновление fragment из другого fragment - Программирование Android
Добрый вечер всем!! Подскажите пожалуйста как обновить один фрагмент из другого (а именно TextView и ArrayAdapter)?

Fragment - Программирование Android
Eсть Activity состоящий из ActionBar в котором две вкладки, каждая из них это Fragment. Не пойму как при переходе ко второй вкладке...

Работа с Fragment - Программирование Android
Ребят изучаю андройд с недавних пор, дошел до фрагментов, но не особо их понимаю, можете кому не лень норм инфы накидать на эту тему?)

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2015, 21:31
Привет! Вот еще темы с ответами:

Работа с Fragment - Программирование Android
Всем привет. Возникла проблема в ходе написания дипломной работы. Мне надо считать показания датчиков акселерометра и вывести на экран....

Reload Fragment - Программирование Android
Такая проблема, по нажатию кнопки поиска у меня возвращается список, под который на фрагменте создаются layout's. Пытаюсь сделать так,...

TextView and Fragment - Программирование Android
Доброго времени суток . Очень странная проблема, в классе extends Fragment есть кнопка и текст вью , при нажатии на кнопку вызываю ...

Анимация Fragment - Программирование Android
Здравствуйте, такой вопрос. как прикрутить эту анимацию: &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;alpha ...


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

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

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