Я пытаюсь отобразить записи БД с помощью listView с SimpleCursorAdaptor. Приложение продолжает вылетать из-за следующей ошибки: ID ресурса # 0x7f0d0061 type # 0x12 недействителен. Сбойный код Java ниже

public class ViewActivity extends AppCompatActivity  {

DatabaseHelper myDb;
ListView myList;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_view);

    myDb = new DatabaseHelper(this);
    myList = (ListView) findViewById(R.id.listViewLocations);


    getListFromDb();
}

public void getListFromDb(){
    Cursor res = myDb.ViewAll();
    startManagingCursor(res);


    //Map cursor from db to viewFields
    String[] fromFieldNames = new String[]{DatabaseHelper.COL_2, DatabaseHelper.COL_3, DatabaseHelper.COL_4, DatabaseHelper.COL_5};
    int[] toViewIDS = new int[]{R.id.viewName, R.id.viewAddress, R.id.viewPostcode, R.id.viewType};

    //Create adaptor to map items from DB to UI
    SimpleCursorAdapter myCursorAdaptor = new SimpleCursorAdapter(this, R.id.item_layout, res, fromFieldNames, toViewIDS, 0);

    // Set adaptor for listView
    myList.setAdapter(myCursorAdaptor);

}

Два файла XML: activity_view.xml


item_layout.xml








Почему продолжает вылетать и что я могу сделать, чтобы это исправить.

Ура

Ali

Ответов: 1

Ответы (1)

item_layout должен быть макетом, а не идентификатором, пожалуйста, измените, как показано ниже:

SimpleCursorAdapter myCursorAdaptor = new SimpleCursorAdapter(this, R.layout.item_layout, res, fromFieldNames, toViewIDS, 0);

2022 WebDevInsider