title: Accessing an element-Button in grid view
body: <p>I am supposed to access a button of an element in a grid view and supposed to capture the onItemClick() activity of that button, but somehow I am not able to do it. Help me out. I am posting my code below. Please check it.</p>
  
  <pre><code>package com.nik.cardone;
  
  import java.util.ArrayList;
  
  import android.os.Bundle;
  import android.support.v4.app.Fragment;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.ViewGroup;
  import android.view.View.OnClickListener;
  import android.widget.AdapterView;
  import android.widget.AdapterView.OnItemClickListener;
  import android.widget.Button;
  import android.widget.GridView;
  import android.widget.TextView;
  
  public class Fragment2 extends Fragment{
  
  GridView fragment2Grid;
  POJOMenuGrid pojo;
  
  ArrayList&lt;POJOMenuGrid&gt; arr;
  String[] name = {"Manchow Soup","Clear Soup","Mushroom Soup","Corn Soup","Tomato Soup"};
  String[] desc = {"Soya water with capsicum , carrots , medium spicy"};
  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container,
          Bundle savedInstanceState) {
      // TODO Auto-generated method stub
      View v = inflater.inflate(R.layout.new_order_fragment_2, null);
  
  
      initialize();
      fragment2Grid = (GridView)v.findViewById(R.id.fragment2Grid);
  
  
      fragment2Grid.setOnItemClickListener(new OnItemClickListener() {
  
          @Override
          public void onItemClick(AdapterView&lt;?&gt; arg0, View arg1, int arg2,
                  long arg3) {
               View v = arg0.getChildAt(arg2);
              // TODO Auto-generated method stub
  
              System.out.println("In grid :");
  
  
  
  
  
          }
  
      });
  
  
      for(int i=0;i&lt;5;i++){
      arr.add(new POJOMenuGrid(name[i], desc[0], R.drawable.t2));
      }
      System.out.println(arr.get(0).getName()+" "+arr.get(0).getDescription()+" ");
  
  
  
      CustomGridAdapter adapter = new CustomGridAdapter(v.getContext(), arr);
      fragment2Grid.setAdapter(adapter);
      System.out.println("adapter set");
  
  
      return v;
  }
  private void initialize() {
      // TODO Auto-generated method stub
      arr = new ArrayList&lt;POJOMenuGrid&gt;();
  
  
  }
  }
  </code></pre>
  
  <p>Custom Adapter </p>
  
  <pre><code>package com.nik.cardone;
  
  import java.util.ArrayList;
  
  import android.content.Context;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.View.OnClickListener;
  import android.view.ViewGroup;
  import android.widget.BaseAdapter;
  import android.widget.Button;
  import android.widget.ImageView;
  import android.widget.TextView;
  
  public class CustomGridAdapter extends BaseAdapter{
  
  
  Context context;
  ArrayList&lt;POJOMenuGrid&gt; arr;
  LayoutInflater inflater;
   TextView itemName;
      TextView itemDescription;
      ImageView itemImage;
      Button plus;
      Button minus;
      TextView counter;
  
  
  public CustomGridAdapter(Context context, ArrayList&lt;POJOMenuGrid&gt; arr) {
      super();
      this.context = context;
      this.arr = arr;
  
      inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  System.out.println("in constructor");
  
  }
  
  
  
  
  @Override
  public int getCount() {
      // TODO Auto-generated method stub
      return arr.size();
  }
  
  @Override
  public Object getItem(int arg0) {
      // TODO Auto-generated method stub
      return arr.get(arg0);
  }
  
  @Override
  public long getItemId(int arg0) {
      // TODO Auto-generated method stub
      return arg0;
  }
  
  @Override
  public View getView(int arg0, View arg1, ViewGroup arg2) {
      // TODO Auto-generated method stub
      System.out.println("in adapter 1");
  
  
      arg1 = inflater.inflate(R.layout.grid_single_item, null);
  
  
  System.out.println("in adapter 2");
  
  itemName  = (TextView)arg1.findViewById(R.id.itemName);
  itemDescription  = (TextView)arg1.findViewById(R.id.itemDescription);
  //counter  = (TextView)arg1.findViewById(R.id.counter);
  itemImage  = (ImageView)arg1.findViewById(R.id.itemImage);
  plus = (Button)arg1.findViewById(R.id.plus);
  minus = (Button)arg1.findViewById(R.id.minus);
  
  
  plus.setOnClickListener(new OnClickListener() {
  
      @Override
      public void onClick(View arg0) {
          System.out.println("In plus :");
          // TODO Auto-generated method stub
          TextView counter = (TextView)arg0.findViewById(R.id.counter);
  
          int counter1 = Integer.parseInt(counter.getText().toString());
  
          counter1++;
          counter.setText(""+counter1);
  
  
  
  
      }
  });
  
  minus.setOnClickListener(new OnClickListener() {
  
      @Override
      public void onClick(View arg0) {
          // TODO Auto-generated method stub
          TextView counter = (TextView)arg0.findViewById(R.id.counter);
  
          int counter1 = Integer.parseInt(counter.getText().toString());
  
          counter1--;
          counter.setText(""+counter1);
  
  
      }
  });
  
  
  System.out.println("in adapter 3");
  
  itemName.setText(arr.get(arg0).getName());
  itemDescription.setText(arr.get(arg0).getDescription());
  itemImage.setImageResource(arr.get(arg0).getImage());
  
  System.out.println("in adapter 4");
  
  return arg1;
  }
  
  }
  </code></pre>