我有一个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) –