Я создаю список дел в Android. В списке есть задачи. Задача в списке содержит (заголовок, описание) как строки, так и сохраненные как объект задачи в ArrayList.
Важно : задачи сохраняются как ArrayList и хранится в базе данных SQLite и отображается в RecyclerView.
Когда я пытаюсь получить данные из базы данных и перечислить их в RecyclerView, приложение останавливается. Я попытался отладить код, и, как я увидел, он останавливается при добавлении элементов в «задачи» ArrayList. Я не знаю, что не так в коде.
public class Listing extends AppCompatActivity implements TaskAdapter.ItemClicked {
RecyclerView recyclerView;
RecyclerView.Adapter myAdapter;
RecyclerView.LayoutManager layoutManager;
ArrayList<Task> tasks;
DatabaseHelper myDB;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_listing);
recyclerView = findViewById(R.id.list);
recyclerView.setHasFixedSize(true);
// setting layout maneger
layoutManager = new LinearLayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
myDB = new DatabaseHelper(this);
Cursor data = myDB.getListContents();
if (data.getCount() == 0) {
Toast.makeText(Listing.this, "no elements", Toast.LENGTH_SHORT).show();
} else {
while (data.moveToNext()) {
Task task = new Task(data.getString(1), data.getString(2));
tasks.add(task);
myAdapter = new TaskAdapter(this, tasks);
recyclerView.setAdapter(myAdapter);
}
}
}