package com.pinthecloud.athere.adapter; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; import com.pinthecloud.athere.AhApplication; import com.pinthecloud.athere.AhGlobalVariable; import com.pinthecloud.athere.R; import com.pinthecloud.athere.fragment.AhFragment; import com.pinthecloud.athere.helper.BlobStorageHelper; import com.pinthecloud.athere.helper.CachedBlobStorageHelper; import com.pinthecloud.athere.helper.UserHelper; import com.pinthecloud.athere.model.AhUser; public class MemberGridAdapter extends ArrayAdapter<AhUser>{ private Context context; private AhFragment frag; private UserHelper userHelper; private CachedBlobStorageHelper blobStorageHelper; public MemberGridAdapter(Context context, AhFragment frag) { super(context, 0); this.context = context; this.frag = frag; AhApplication app = AhApplication.getInstance(); this.userHelper = app.getUserHelper(); this.blobStorageHelper = app.getBlobStorageHelper(); } @Override public View getView(int position, View convertView, ViewGroup parent) { View view = convertView; if (view == null) { LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); view = inflater.inflate(R.layout.row_member_grid, parent, false); } AhUser user = getItem(position); if (user != null) { /* * Find UI component */ ImageView profileImage = (ImageView)view.findViewById(R.id.row_member_grid_profile_image); ImageView myProfile = (ImageView)view.findViewById(R.id.row_member_grid_my_profile); TextView nickName = (TextView)view.findViewById(R.id.row_member_grid_nick_name); ImageView gender = (ImageView)view.findViewById(R.id.row_member_grid_gender); /* * Set UI component */ blobStorageHelper.setImageViewAsync(frag, BlobStorageHelper.USER_PROFILE, user.getId()+AhGlobalVariable.SMALL, R.drawable.ground_member_profile_default, profileImage, true); nickName.setText(user.getNickName()); if(userHelper.isMyUser(user)){ myProfile.setVisibility(View.VISIBLE); }else{ myProfile.setVisibility(View.GONE); } if(user.isMale()){ gender.setImageResource(R.drawable.general_gender_m); }else{ gender.setImageResource(R.drawable.general_gender_w); } } return view; } }