I am fetching data from json and saving into arrayList of custom class type. Here it is,
class ShowInfo{
public String title;
public String image;
public String id;
}
ArrayList<ShowInfo> imgs = new ArrayList<ShowInfo>();
My gridView adapter class is -
class CustomAdapter extends ArrayAdapter<ShowInfo> {
CustomAdapter() {
super(getActivity(), android.R.layout.simple_list_item_1, imgs);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if(convertView == null){
LayoutInflater inflater = getActivity().getLayoutInflater();
convertView = inflater.inflate(R.layout.single_image, null);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
}
else{
holder = (ViewHolder)convertView.getTag();
}
holder.populateFrom(imgs.get(position));
return convertView;
}
}
class ViewHolder{
// public TextView payment = null;
public ImageView image = null;
ViewHolder(View view){
image = new RoundedImageView(getActivity().getApplicationContext());
LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(width / rowLimit, width / rowLimit);
params2.setMargins(5, 0, 5, 0);
//content.setLayoutParams(params);
}
void populateFrom(GalleryInfo info){
// image.setImageBitmap(info.logo);
Picasso.with(getActivity())
.load(info.image)
.placeholder(R.drawable.dittyicon)
.resize(200, 200)
.into(image);
}
}
When click on any item of gridview I want to get title and id of corresponding grid image. I could I get that? I am stuck here, any help will be appreciated.
By using OnItemClickListener
you can do it as follows
yourGridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
ShowInfo info=imgs.get(position);
//By using info you can get title and id
}
});
Hope this will helps you.