ListView будет пустым, если источник ListView (Cursor или Array) пуст (а не null, что приведет к исключению нулевого указателя). Фактически в большинстве случаев ListView изначально будет пустым, так как вы обычно вызываете setContentView, который применяет макет, который обычно включает ListView (который на этом этапе не имеет адаптера и, следовательно, ничего не отображает). Затем вы получите ListView, настроите адаптер и затем установите ListView с адаптером, что приведет к тому, что элементы будут перечислены (если есть).
База данных SQLite, однажды созданная, довольно солидна, и вероятность ошибок чтения / записи довольно мала, и я уверен, что возникнет исключение.
Наиболее частые ошибки чтения, как таковые, возникают при копировании ранее существующей базы данных, и обычно причиной является каталог, в который помещен файл базы данных, не существует.
- База данных создается вне приложения и, как правило, помещается в папку ресурсов, ресурс (который доступен только для чтения и также сжимается) затем копируется туда, где он будет полностью доступен (обычно в каталог баз данных данных приложения ( data / data / имя_пакета / database / the_database_file )