Intereting Posts
Android Studio с использованием библиотеки и проекта с тем же именем пакета Получить результат от DialogFragment Некоторые (но не все) пользователи получают «файл пакета не был правильно подписан» при загрузке моего приложения из Google Play Можно ли добавлять стрелки на полилинии с помощью карт Android V2 Могу ли я выполнять математические операции над размерами и переменными? Соглашение о пакете Java SQLiteDiskIOException: ошибка ввода-вывода диска (код 3850) Определение частоты / высоты для чайников Не удалось выполнить: com.android.support:appcompat-v7:26.0.0 API MAP для Google для android ограничивает 2500 запросов в день на клиентское устройство или на один ключ приложения? Ошибка JNI: Локальная таблица переполнения 512 записей Перераспределение ADB Android Что означает PorterDuff.Mode в графике Android. Что он делает? Ошибка загрузки AWS S3 с ошибкой не удалась в Android Как создать собственный сервис android и использовать связующее для связи с ним?

ArrayAdapter: вы должны указать идентификатор ресурса для текстового просмотра

У меня есть приложение, в котором я хочу заполнить ListView данными из базы данных SQLite … в этой части у меня есть проблема с arrayAdapter …

Вот мой код метода для заполнения listView:

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_list); PetListView = (ListView)findViewById(R.id.list); MyDatabaseHelper db = new MyDatabaseHelper(this); String [] items = new String[100]; List<Pet> pets = db.getAllPets(); for (int i = 0; i < 10; i++) { items[i] = pets.get(i).getName(); } ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.activity_list_item, R.id.textView1list, items); PetListView.setAdapter(adapter); } 

И это метод, реализованный в моем помощнике базы данных:

 public List<Pet> getAllPets() { List<Pet> petList = new ArrayList<Pet>(); String selectQuery = "SELECT * FROM " + TABLE_PETS; SQLiteDatabase db = this.getWritableDatabase(); Cursor cursor = db.rawQuery(selectQuery, null); if (cursor.moveToFirst()) { do { Pet pet = new Pet(); pet.setID(Integer.parseInt(cursor.getString(0))); pet.setName(cursor.getString(1)); pet.setAge(cursor.getString(2)); petList.add(pet); } while (cursor.moveToNext()); } cursor.close(); return petList; } 

Почему textView? Я использую ListView …

Можете ли вы кто-нибудь сказать мне каким-либо другим способом, как заполнить listView данными (именами) из SQLite?

использование

  ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.activity_list_item, android.R.id.text1, items); 

Instad of

  ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.activity_list_item, R.id.textView1list, items); 

Используйте android.R.id.text1 как идентификатор TextView, если вы используете макет Activity_list_item по умолчанию для ListView