I am looking for some help with a tutorial I have been working on. I am trying to pass an object when I click on a list item from one activity to another using an Intent. I have posted some of the tutorial code I have been using below but can't seem to get it to work.
My Main Activity code is below:
    StringRequest stringRequest = new StringRequest(Request.Method.GET, GET_HEROES_URL,
            new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    try {
                        JSONArray array = new JSONArray(response);
                        for(int i =0; i<array.length(); i++){
                            JSONObject obj = array.getJSONObject(i);
                            Hero hero = obj.getString("name"));
                            heroList.add(hero);
                        }
                        adapter = new HeroAdapter(heroList, getApplicationContext());
                        recyclerView.setAdapter(adapter);
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                }
            });
    RequestQueue requestQueue = Volley.newRequestQueue(this);
    requestQueue.add(stringRequest);
}
And from my Adapter this is the code I have been using this:
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    final Hero hero = heroList.get(position);
    holder.textViewName.setText(hero.getName());
    holder.textViewName.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(context, HeroDetailActivity.class);
            intent.putExtra(KEY_HERO_ID, hero.getName());
            context.startActivity(intent);
        }
    });
} 
The intent is listed but it is not carrying the data into my new activity. I just want to take
 hero.getName() 
at the position it was clicked on in the itemlist and open up a new activity, and in the new activity set it to a TextView. This is part of code I have used on the new activity, but it wont post anything into the TextView.
TextView textViewName
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_hero_detail);
    textViewname = (textView) findViewById(R.id.textView);
    Intent intent = getIntent();
    if(intent == null)
        return;
    int id = intent.getIntExtra(HeroAdapter.KEY_HERO_ID, -1);
    err.setText(id);
For instance I click on spiderman set in the list which is at position 3, and in the new activity the textView will load with Spiderman listed. Any help would be appreciated.
 
     
    