我有一個android活動,開始另一個獲得結果。第二個Activity有一個自定義的listview,它應該根據選擇返回一個值給父Activity。問題是,在onActivityResult我會得到RESULT_OK = -1,但我返回的值始終爲0; 的第一個活動,我稱之爲第二次在一個optionsMenu:onActivityResult沒有得到結果
我onActivityResult是:
@Override
protected void onActivityResult (int requestCode, int resultCode, Intent i){
if(resultCode == RESULT_OK && requestCode == REQUEST_CODE){
workTime = i.getIntExtra("workTime", 0);
}
}
而在第二個活動:
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
Profile selected = (Profile) adapterView.getItemAtPosition(position);
Intent i = new Intent(view.getContext(), MainActivity.class);
long w = selected.getWorkTime; //has the correct value.
i.putExtra("workTime", w);
setResult(RESULT_OK, i);
finish();
}
});
查看本文[示例](http://stackoverflow.com/documentation/android/103/intent#t=201612310854047774161) –