Крашится приложение при использовании Pimary Key, переданного через intent

В MainActivity создаю объект для добавление в БД Room.

@Entity(tableName = "table_lists")
public class MainList {

@ColumnInfo(name = "id")
@PrimaryKey(autoGenerate = true)
private int id;

private String name;

public MainList(String name) {
    this.name = name;
}

public void setId(int id) {
    this.id = id;
}

public int getId() {
    return id;
}

public String getName() {
    return name;
}

Далее я его добавляю при помощи viewModel в базу данных, дальше с этого объекта я получаю id, name - передаю через интент в другое активити.

MainList mainList = new MainList("Новый список");
        viewModel.insertMainList(mainList);

Все через AsyncTask естесно, запуск активити происходит через StarActivityForResult, в новой активити я пробую через Toast вытащить idшник и приложение вылетает.

  Intent intent = getIntent();

    setTitle("Edit goods");
    list_name = intent.getStringExtra(EXTRA_TITLE);
    list_id = intent.getIntExtra(EXTRA_ID, -1);
    editText_listName.setText(list_name);
    Toast.makeText(this, list_id, Toast.LENGTH_SHORT).show();

Ответы (1 шт):

Автор решения: ЮрийСПб

У вас в LogCat есть вывод сообщения об ошибке. Если бы вы туда посмотрели, то увидели бы, что не найден строковый ресурс в методе Toast.makeText(Context context, @StringRes int stringId, int length).

Это происходит потому, что вы не тот метод вызываете. Вам надо вызывать метод Toast.makeText(Context context, String string, int length), передавая туда строку (переменную list_name ), а не число. Или прeобразовав число в строку String.valueOf(list_id)

→ Ссылка