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

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

Войти
Регистрация
Восстановить пароль
 
svirfneblyn
1 / 1 / 1
Регистрация: 16.10.2013
Сообщений: 16
#1

Your content must have a ListView whose id attribute is 'android.R.id.list' - как правильно создать адаптор ? - Программирование Android

28.01.2015, 10:39. Просмотров 742. Ответов 2
Метки нет (Все метки)

Добрый день.
Помогите разобраться с вопросом. Как правильно формировать адаптер для ListView?
беру данные из BD.
Результат у меня такой :
Your content must have a ListView whose id attribute is 'android.R.id.list' - как правильно создать адаптор ?

Java
1
2
3
4
5
6
7
8
9
public class QuotesListActivity extends ListActivity implements View.OnClickListener{
  super.onCreate(savedInstanceState);
        setContentView(R.layout.quotes_list_iew);
   
        Log.d(TAG, "after open");
        (this.qDataSource= new QuotesDataSource((Context)this)).open();
        movieses = this.qDataSource.getAllMovies();
 
        this.setListAdapter((ListAdapter)new ArrayAdapter((Context)this, android.R.layout.simple_list_item_1, (List)this.movieses));
Если использую свой adaptor, то получаю Exeption:
Java
1
 Caused by: java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'
сам adaptor:
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
public class QuotesAdapter extends BaseAdapter {
    private final Context context;
    private ArrayList<Movies> objects;
    LayoutInflater lInflater;
public QuotesAdapter (Context context, ArrayList<Movies> objects){
    super();
    this.context = context;
    this.objects = objects;
    lInflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
    @Override
    public int getCount() {
        return this.objects.size();
    }
 
    @Override
    public Object getItem(int position) {
        return  this.objects.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        if (view == null) {
            view = lInflater.inflate(R.layout.quotes_list_iew, parent, false);
        }
        final Movies quote = this.objects.get(position);
 
        final TextView textView = new TextView(this.context);
    
        textView.setText((CharSequence)quote.getName().toString());
        return (View)textView;
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2015, 10:39     Your content must have a ListView whose id attribute is 'android.R.id.list' - как правильно создать адаптор ?
Посмотрите здесь:
Ошибка The content of the adapter has changed but ListView did not receive a notification Android
Android Как перенести ListView в круговое В Android
Android Android.content.res.Resources$NotFoundException: String resource ID #0xffffffaf
Android Передача данных между двумя телефонами Android + Content Provider
Android Как правильно сверстать в android
Android Как правильно обновлять Android Studio
Как правильно построить адаптер для показа данных из базы в ListView Android
Android Как правильно составить цикл который выполняет каждую команду с разной паузой - Android
Как создать ListView с двумя TextView и работать с ними Android
Expandable List View Android Android
Android Listview Scroll Android
Как создать Android проект? Android

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_Vertigo_
14 / 14 / 2
Регистрация: 07.09.2013
Сообщений: 159
Завершенные тесты: 1
28.01.2015, 19:03     Your content must have a ListView whose id attribute is 'android.R.id.list' - как правильно создать адаптор ? #2
Советую почитать вот эту статью:http://dajver.blogspot.ru/2013/01/android.html Там довольно таки доходчиво рассказано, как сформировать ListView используя ресурсы базы данных.
svirfneblyn
1 / 1 / 1
Регистрация: 16.10.2013
Сообщений: 16
29.01.2015, 10:14  [ТС]     Your content must have a ListView whose id attribute is 'android.R.id.list' - как правильно создать адаптор ? #3
_Vertigo_, спасибо за ссылку, хороший ресурс. Не только о листвью полезные статьи

мой же вопрос решился так :
Убрал наследование ListActivity и унаследовался от Activity.Ошибка исчезла, но выводились ссылки вместо текста..
Перезагрузил geny motion - вывелся текст из БД.
Скорее всего некий сбой в утилитах + моё не понимание процессов.
Ответ Создать тему
Опции темы

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