Question about passing data using intents

Posted by Joe K 1973 on Stack Overflow See other posts from Stack Overflow or by Joe K 1973
Published on 2010-04-19T12:27:01Z Indexed on 2010/04/19 12:33 UTC
Read the original article Hit count: 302

Filed under:
|

Hi everyone,

I'm trying to modify the Notepad tutorial (the Notepadv3 solution) to take in a value into the NoteEdit class, given to by the Notepadv3 class. I've successfully used .putExtra in the OnListItemClick method to place the value into the NoteEdit class, but I'm struggling to do this for the createNote method; I'm getting a force close when I try to create a new note.

I bet there's a simple solution, but I'm pretty new to Java & Android and would very much appreciate your help.

Here's the code in question in the Notepadv3 class:

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();
}

And here's the receiving code in the NoteEdit class:

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");

    }

I'm fairly sure that (mRowId == null) is not true when I'm using the createNote method so therefore getExtras won't be called. One of my questions would be how can I make my NoteEdit class get this value when I use the createNote method? I'm new to this so sorry if this is a simple question for you all.

Thanks,

Joe

© Stack Overflow or respective owner

Related posts about intents

Related posts about android