package com.marshalchen.common.demoofui.driveimageview;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import com.marshalchen.common.demoofui.R;
import com.marshalchen.common.demoofui.driveimageview.fragments.DetailFragment;
import com.marshalchen.common.demoofui.driveimageview.fragments.MainFragment;
import java.util.ArrayList;
import ch.haclyon.driveimageview.DriveImageModel;
import ch.haclyon.driveimageview.DriveImageView;
public class DisplayItemAdapter extends ArrayAdapter<String> {
private FragmentManager fragmentManager;
public DisplayItemAdapter(Context context, ArrayList<String> descriptions, FragmentManager fragmentManager) {
super(context, 0, descriptions);
this.fragmentManager = fragmentManager;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
String desc = getItem(position);
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.drive_image_view_item, parent, false);
}
String ftext = "photo number " + (position + 1) + " of " + MainFragment.samplePictures.length;
DriveImageModel m = new DriveImageModel(desc, ftext, MainFragment.samplePictures[position]);
DriveImageView view = (DriveImageView) convertView.findViewById(R.id.driveImageView);
view.setDriveImageModel(m);
view.setBackgroundColor(MainFragment.sampleColours[position]);
view.setCustomFolderSpacing(100f);
view.setAlphaValue(0.7f);
view.setCustomHeight(MainFragment.sampleHeights[position]);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
DetailFragment detailFragment = DetailFragment.newInstance(position);
fragmentTransaction.replace(R.id.fragment_container, detailFragment);
fragmentTransaction.addToBackStack("detail");
fragmentTransaction.commit();
}
});
return convertView;
}
}