안드로이드 개발 질문/답변
(글 수 45,052)
----historyActivity(ListActivity)------
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Map<String, String> data = (Map<String, String>) parent.getItemAtPosition(position);
Intent i = new Intent(this, HRecordActivity.class);
i.putExtra(HRecordActivity.voiceInput, data.get(INPUT));
i.putExtra(HRecordActivity.translatedResult, data.get(OUTPUT));
startActivity(i);
}
------hrecordActivity-------
public void onCreate(Bundle bundle){
super.onCreate(bundle);
setContentView(R.layout.hrecord_activity);
bundle = this.getIntent().getExtras();
v = bundle.getString(voiceInput);
t = bundle.getString(translatedResult);
input = (EditText)findViewById(R.id.hrecordInputText);
output = (EditText)findViewById(R.id.hrecordOutputText);
input.setText(v);
output.setText(t);
}
필요한 부분만 옮겼습니다.
위의 코드처럼 history에서 hrecord로 intent를 통해 값을 전달해서 hrecord에서 EditText input과 output에서 출력을 합니다. 그런데 희한한게 둘다 값이 똑같아요. 그것도 뒤의 값으로만 나오게 됩니다.
별거 없는 코드인데 왜 그런지 이해가 안가네요.
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Map<String, String> data = (Map<String, String>) parent.getItemAtPosition(position);
Intent i = new Intent(this, HRecordActivity.class);
i.putExtra(HRecordActivity.voiceInput, data.get(INPUT));
i.putExtra(HRecordActivity.translatedResult, data.get(OUTPUT));
startActivity(i);
}
------hrecordActivity-------
public void onCreate(Bundle bundle){
super.onCreate(bundle);
setContentView(R.layout.hrecord_activity);
bundle = this.getIntent().getExtras();
v = bundle.getString(voiceInput);
t = bundle.getString(translatedResult);
input = (EditText)findViewById(R.id.hrecordInputText);
output = (EditText)findViewById(R.id.hrecordOutputText);
input.setText(v);
output.setText(t);
}
필요한 부분만 옮겼습니다.
위의 코드처럼 history에서 hrecord로 intent를 통해 값을 전달해서 hrecord에서 EditText input과 output에서 출력을 합니다. 그런데 희한한게 둘다 값이 똑같아요. 그것도 뒤의 값으로만 나오게 됩니다.
별거 없는 코드인데 왜 그런지 이해가 안가네요.