You don't have to call onResult()
when you want to identify your activity's result, instead use setResult
whenever the user makes a selection and when your activity finishes the last set result will propagate back to the activity that started your activity for result.
The code should look like:
onItemSelected(){ // or onClick
getItem();
setResult();
}