W metodzie masz błąd logiczny:
while (!cursor.isLast()) {
rekordy.add(cursor.getString(0));
cursor.moveToNext();
}
Iterujesz tylko do przedostatniego rekordu
powinno być:
public ArrayList<String> getRecords(String Nick,String Co) {
SQLiteDatabase db = this.getReadableDatabase();
try {
Cursor cursor = db.query("Lajki", new String[]{"Nazwa"}, "Nick = ? AND Co = ?", new String[]{Nick, Co}, null, null, null, null);
rekordy = new ArrayList<>();
while (cursor.moveToNext()) {
rekordy.add(cursor.getString(0));
}
return rekordy;
} catch (CursorIndexOutOfBoundsException e) {
rekordy = new ArrayList<>();
return rekordy;
}finaly{
if(cursor!=null){
cursor.close();
}
}
}
Nie sprawdzałem dalej. Musisz pamiętać o zwalnianiu zasobów. Cursor trzeba zamknąć.