Я пытаюсь изменить учебник Notepad (решение Notepadv3) так, чтобы он принимал значение в классе NoteEdit, заданном классом Notepadv3. Я успешно использовал .putExtra в методе OnListItemClick для помещения значения в класс NoteEdit, но я изо всех сил пытаюсь сделать это для метода createNote; Когда я пытаюсь создать новую заметку, у меня приближается сила.
Могу поспорить, что есть простое решение, но я довольно новичок в Java и Android и буду очень признателен за вашу помощь.
Вот код в классе Notepadv3:
private void createNote() {
Intent i = new Intent(this, NoteEdit.class);
i.putExtra("key", 1);
startActivityForResult(i, ACTIVITY_CREATE);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Intent i = new Intent(this, NoteEdit.class);
i.putExtra(NotesDbAdapter.KEY_ROWID, id);
i.putExtra("key", 1);
startActivityForResult(i, ACTIVITY_EDIT);
}
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
fillData();
}
А вот код получения в классе NoteEdit:
mRowId = savedInstanceState != null ? savedInstanceState.getLong(NotesDbAdapter.KEY_ROWID)
: null;
if (mRowId == null) {
Bundle extras = getIntent().getExtras();
mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID)
: null;
value = extras.getInt("key");
}
Я вполне уверен, что (mRowId == null) неверно, когда я использую метод createNote, поэтому getExtras вызываться не будет. Один из моих вопросов - как я могу заставить мой класс NoteEdit получить это значение, когда я использую метод createNote? Я новичок в этом, так что извините, если это простой вопрос для всех вас.
Спасибо
Джо