Android : Grid View Item repeating issue

on Friday, August 22, 2014


i am showing my post items in grid view it shows repeatedly in grid view.


when i click on home button and resume my activity then it shows correct grid items without repetition.


enter image description here


enter image description here


my grid view adapter source code added below.



public class GridViewAdapter extends ArrayAdapter<GridPost> {
public ArrayList<GridPost> items;

public GridViewAdapter(Context context, int resource,
ArrayList<GridPost> paramArrayList) {
super(context, resource, paramArrayList);
/*
* for(int i=0;i<paramArrayList.size();i++){ GridPost localgridpost
* = new GridPost();
*
* Post localPost1= (Post)paramArrayList.get(i);
* localgridpost.setColumn1(localPost1);
*
* Post localPost2= (Post)paramArrayList.get(++i);
* localgridpost.setColumn2(localPost2);
*
* Post localPost3= (Post)paramArrayList.get(++i);
* localgridpost.setColumn3(localPost3);
*
* this.items.add(localgridpost); }
*/

Log.e("TAG",
"GridViewAdapter paramArrayList" + paramArrayList.size());
items = paramArrayList;

}

@Override
public View getView(int position, View row, ViewGroup parent) {
Log.e("TAG", "ADAPTER SIZE 1" + localGridAdapter.getCount());
ViewHolder holder = null;
// row = null;
if (row == null) {
row = infalter.inflate(R.layout.postgrid_parentdetails, null);
holder = new ViewHolder();

holder.localpostView1 = (View) row
.findViewById(R.id.localpost1);

holder.localpostView2 = (View) row
.findViewById(R.id.localpost2);
holder.localpostView3 = (View) row
.findViewById(R.id.localpost3);

holder.localpostView1.setTag(holder);
holder.localpostView1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

ViewHolder holder = (ViewHolder) v.getTag();
Intent postID = new Intent(mContext,
IndividualPost.class);
postID.putExtra("postID", String
.valueOf(holder.localgridpost.getColumn1()
.getPostID()));
ProfileFragment.this.startActivity(postID);
getActivity().overridePendingTransition(
R.anim.slide_in_right, R.anim.slide_out_left);

}
});

holder.localpostView2.setTag(holder);
holder.localpostView2.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

ViewHolder holder = (ViewHolder) v.getTag();
Intent postID = new Intent(mContext,
IndividualPost.class);
postID.putExtra("postID", String
.valueOf(holder.localgridpost.getColumn2()
.getPostID()));
ProfileFragment.this.startActivity(postID);
getActivity().overridePendingTransition(
R.anim.slide_in_right, R.anim.slide_out_left);

}
});
holder.localpostView3.setTag(holder);
holder.localpostView3.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

ViewHolder holder = (ViewHolder) v.getTag();
Intent postID = new Intent(mContext,
IndividualPost.class);
postID.putExtra("postID", String
.valueOf(holder.localgridpost.getColumn3()
.getPostID()));
ProfileFragment.this.startActivity(postID);
getActivity().overridePendingTransition(
R.anim.slide_in_right, R.anim.slide_out_left);
}
});

row.setTag(holder);
} else {

holder = (ViewHolder) row.getTag();

}

GridPost localgrid = (GridPost) this.items.get(position);
holder.localgridpost = localgrid;
if (holder.localgridpost != null) {

if (holder.localgridpost.getColumn1() != null) {
holder.localpostView1.setVisibility(0);
((TextView) holder.localpostView1
.findViewById(R.id.row_feed_photo_posttitle))
.setText(holder.localgridpost.getColumn1()
.getPostSubject());
((TextView) holder.localpostView1
.findViewById(R.id.row_feed_photo_textview_price))
.setText(holder.localgridpost.getColumn1()
.getPrice());
if (holder.localgridpost.getColumn1().getImage1() != null) {
/*
* Bitmap localBitmap = BitmapFactory.decodeResource(
* ProfileFragment.this.mResources, R.drawable.islogo);
* ProfileFragment.this.setImageFromUrl(
* holder.localgridpost.getColumn1().getImage1(),
* localBitmap, (ImageView) holder.localpostView1
* .findViewById(R.id.image), "post", position, 3 *
* ProfileFragment.this.width / 10, 3 *
* ProfileFragment.this.width / 10, null);
*/

Picasso.with(activity)
.load(CommonLib.BASE_URL
+ holder.localgridpost.getColumn1()
.getImage1())
.error(R.drawable.islogo)
.placeholder(R.drawable.islogo)
.into((ImageView) holder.localpostView1
.findViewById(R.id.image));

}
} else {
holder.localpostView1.setVisibility(8);
}
if (holder.localgridpost.getColumn2() != null) {
holder.localpostView2.setVisibility(0);
((TextView) holder.localpostView2
.findViewById(R.id.row_feed_photo_posttitle))
.setText(holder.localgridpost.getColumn2()
.getPostSubject());
((TextView) holder.localpostView2
.findViewById(R.id.row_feed_photo_textview_price))
.setText(holder.localgridpost.getColumn2()
.getPrice());
if (holder.localgridpost.getColumn2().getImage1() != null) {
/*
* Bitmap localBitmap = BitmapFactory.decodeResource(
* ProfileFragment.this.mResources, R.drawable.islogo);
* ProfileFragment.this.setImageFromUrl(
* holder.localgridpost.getColumn2().getImage1(),
* localBitmap, (ImageView) holder.localpostView2
* .findViewById(R.id.image), "post", position, 3 *
* ProfileFragment.this.width / 10, 3 *
* ProfileFragment.this.width / 10, null);
*/

Picasso.with(activity)
.load(CommonLib.BASE_URL
+ holder.localgridpost.getColumn2()
.getImage1())
.error(R.drawable.islogo)
.placeholder(R.drawable.islogo)
.into((ImageView) holder.localpostView2
.findViewById(R.id.image));

}
} else {
holder.localpostView2.setVisibility(8);
}
if (holder.localgridpost.getColumn3() != null) {
holder.localpostView3.setVisibility(0);
((TextView) holder.localpostView3
.findViewById(R.id.row_feed_photo_posttitle))
.setText(holder.localgridpost.getColumn3()
.getPostSubject());
((TextView) holder.localpostView3
.findViewById(R.id.row_feed_photo_textview_price))
.setText(holder.localgridpost.getColumn3()
.getPrice());
if (holder.localgridpost.getColumn3().getImage1() != null) {
/*
* Bitmap localBitmap = BitmapFactory.decodeResource(
* ProfileFragment.this.mResources, R.drawable.islogo);
* ProfileFragment.this.setImageFromUrl(
* holder.localgridpost.getColumn3().getImage1(),
* localBitmap, (ImageView) holder.localpostView3
* .findViewById(R.id.image), "post", position, 3 *
* ProfileFragment.this.width / 10, 3 *
* ProfileFragment.this.width / 10, null);
*/

Picasso.with(activity)
.load(CommonLib.BASE_URL
+ holder.localgridpost.getColumn3()
.getImage1())
.error(R.drawable.islogo)
.placeholder(R.drawable.islogo)
.into((ImageView) holder.localpostView3
.findViewById(R.id.image));

}
} else {
holder.localpostView3.setVisibility(8);
}

}
Log.e("TAG", "ADAPTER SIZE 2" + localGridAdapter.getCount());
return row;
}

private class ViewHolder {
View localpostView1, localpostView2, localpostView3;
GridPost localgridpost;

}

}

0 comments:

Post a Comment