package com.netease.nim.uikit.common.media.picker.adapter;
import android.content.Context;
import android.os.Build;
import android.support.v4.view.PagerAdapter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.netease.nim.uikit.R;
import com.netease.nim.uikit.common.activity.UI;
import com.netease.nim.uikit.common.media.picker.activity.PreviewImageFromLocalActivity;
import com.netease.nim.uikit.common.ui.imageview.BaseZoomableImageView;
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
import java.util.List;
public class ImagePagerAdapterInImageSwitch extends PagerAdapter{
private Context mContext;
private List<String> mList;
private LayoutInflater mInflater;
private int viewPagerWidth, viewPagerHeight;
private UI mActivity;
public ImagePagerAdapterInImageSwitch(Context cx, List<String> list, LayoutInflater inflater, int width, int height, UI activity) {
mContext = cx;
mList = list;
mInflater = inflater;
viewPagerHeight = height;
viewPagerWidth = width;
mActivity = activity;
}
@Override
public void destroyItem (ViewGroup container, int position, Object object) {
View layout = (View)object;
BaseZoomableImageView iv = (BaseZoomableImageView)layout.findViewById(R.id.imageView);
iv.clear();
container.removeView(layout);
}
@Override
public int getCount() {
return mList == null ? 0 : mList.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return (arg0 == arg1);
}
@Override
public Object instantiateItem (ViewGroup container, int position) {
// ImageView iv = new ImageView(mContext);
View layout = null;
// if( Build.VERSION.SDK_INT >= 17 )
if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO )
{
layout = mInflater.inflate(R.layout.nim_preview_image_layout_multi_touch, null);
}
else
{
layout = mInflater.inflate(R.layout.nim_preview_image_layout_zoom_control, null);
}
container.addView(layout);
layout.setTag(position);
viewPagerWidth = ScreenUtil.screenWidth;
viewPagerHeight = ScreenUtil.screenHeight;
return layout;
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
@Override
public void setPrimaryItem (View container, int position, Object object) {
((PreviewImageFromLocalActivity) mActivity).updateCurrentImageView(position);
}
}