I have a main activity, inside which there is a fragment with an image view. When this image view is clicked, a new activity starts which contains a list view. I want to return the position(index) the user clicks on this list view, back to the fragment.
Fragment Code
package com.example.kedee.testgradle;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
/**
 * A simple {@link Fragment} subclass.
 */
public class ASKFragment extends Fragment implements View.OnClickListener{
    private Context context;
    private View rootView;
    private int pos;
    public ASKFragment() {
        // Required empty public constructor
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        rootView= inflater.inflate(R.layout.fragment_ask, container, false);
        context=inflater.getContext();
        setListeners();
        return  rootView;
    }
    void setListeners(){
        ImageView catIcon=(ImageView)rootView.findViewById(R.id.cat_icon);
        catIcon.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        int vID=v.getId();
        if(vID==R.id.cat_icon){
            Intent intent=new Intent(getActivity(),ASK.class);
            getActivity().startActivity(intent);
        }
    }
}    
Code of Activity which is getting called from this fragment. (ASK activity)
package com.example.kedee.testgradle;
import android.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class ASK extends AppCompatActivity {
    private int index;
    private String[] catNames= {"Acad","Emer","Tech","Exam","Station","Finance","Medical","Place","Sports" ,
            "Others" };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ask);
        ListView listView=(ListView)findViewById(R.id.ask_cat_listView);
        listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice,catNames));
        listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
            public void onItemClick(AdapterView<?> listView, View v, int pos, long id){
                index=pos;
                //code to return back this index to the parent fragment?
            }
        });
    }
}
 
     
     
    