Premesso che sarebbe buona norma indicare la stringa di errore generata (usi Android Studio)?
Io farei così:
inoltre le dichiarazioni final sono superfluecodice:public class MainActivity extends Activity { protected void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.activity_main); final Button button = (Button) findViewById(R.id.form_button); button.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // your handler code here final EditText edit_name = (EditText)findViewById(R.id.edit_name); final EditText edit_lastname = (EditText)findViewById(R.id.edit_lastname); Intent form_intent = new Intent(getApplicationContext(), Form.class); form_intent.putExtras("name", edit_name.getText().toString()); form_intent.putExtras("lastname", edit_lastname.getText().toString()); startActivity(form_intent); } }); }