101 lines
4.4 KiB
Java
101 lines
4.4 KiB
Java
package com.gh.common.util;
|
|
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.view.View;
|
|
import android.widget.LinearLayout;
|
|
|
|
import com.facebook.drawee.drawable.ScalingUtils;
|
|
import com.facebook.drawee.view.SimpleDraweeView;
|
|
import com.gh.gamecenter.ViewImageActivity;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* Created by khy on 2016/11/8.
|
|
*
|
|
* 初始化资讯关注-内容图片
|
|
*
|
|
**/
|
|
public class ConcernContentUtils {
|
|
|
|
public static void addContentPic(Context context, LinearLayout linearLayout, List<String> list,
|
|
String entrance, int width) {
|
|
int count = list.size();
|
|
int index = 0;
|
|
for (int i = 0, size = (int) Math.ceil(list.size() / 3.0f); i < size; i++) {
|
|
int type = count % 3;
|
|
if (type == 0) {
|
|
LinearLayout ll = new LinearLayout(context);
|
|
ll.setOrientation(LinearLayout.HORIZONTAL);
|
|
for (int j = 0; j < 3; j++) {
|
|
ll.addView(getImageView(context, list, entrance, index, width, 0));
|
|
index += 1;
|
|
}
|
|
linearLayout.addView(ll);
|
|
count -= 3;
|
|
} else if (type == 1) {
|
|
linearLayout.addView(getImageView(context, list, entrance, index, width, 1));
|
|
count -= 1;
|
|
index += 1;
|
|
} else if (type == 2) {
|
|
LinearLayout ll = new LinearLayout(context);
|
|
ll.setOrientation(LinearLayout.HORIZONTAL);
|
|
for (int j = 0; j < 2; j++) {
|
|
ll.addView(getImageView(context, list, entrance, index, width, 2));
|
|
index += 1;
|
|
}
|
|
linearLayout.addView(ll);
|
|
count -= 2;
|
|
}
|
|
}
|
|
}
|
|
|
|
private static SimpleDraweeView getImageView(final Context context, final List<String> list, final String entrance,
|
|
final int position, int width, int type) {
|
|
SimpleDraweeView imageView;
|
|
if (type == 0) {
|
|
imageView = new SimpleDraweeView(context);
|
|
LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(
|
|
0, width / 3 - DisplayUtils.dip2px(context, 4));
|
|
lparams.setMargins(DisplayUtils.dip2px(context, 2), 0,
|
|
DisplayUtils.dip2px(context, 2), DisplayUtils.dip2px(context, 4));
|
|
lparams.weight = 1;
|
|
imageView.setLayoutParams(lparams);
|
|
ImageUtils.getInstance().display(context.getResources(), imageView,
|
|
ScalingUtils.ScaleType.CENTER_CROP, list.get(position));
|
|
} else if (type == 1) {
|
|
imageView = new SimpleDraweeView(context);
|
|
LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(width, width / 2);
|
|
lparams.setMargins(DisplayUtils.dip2px(context, 2), 0,
|
|
DisplayUtils.dip2px(context, 2), DisplayUtils.dip2px(context, 4));
|
|
imageView.setLayoutParams(lparams);
|
|
ImageUtils.getInstance().display(context.getResources(), imageView,
|
|
ScalingUtils.ScaleType.CENTER_CROP, list.get(position));
|
|
} else {
|
|
imageView = new SimpleDraweeView(context);
|
|
LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(
|
|
0, width / 2 - DisplayUtils.dip2px(context, 4));
|
|
lparams.setMargins(DisplayUtils.dip2px(context, 2), 0,
|
|
DisplayUtils.dip2px(context, 2), DisplayUtils.dip2px(context, 4));
|
|
lparams.weight = 1;
|
|
imageView.setLayoutParams(lparams);
|
|
ImageUtils.getInstance().display(context.getResources(), imageView,
|
|
ScalingUtils.ScaleType.CENTER_CROP, list.get(position));
|
|
}
|
|
imageView.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
Intent checkIntent = new Intent(context, ViewImageActivity.class);
|
|
checkIntent.putExtra("urls", (ArrayList<String>) list);
|
|
checkIntent.putExtra("current", position);
|
|
checkIntent.putExtra("ScaleType", "FIT_CENTER");
|
|
checkIntent.putExtra("entrance", entrance);
|
|
context.startActivity(checkIntent);
|
|
}
|
|
});
|
|
return imageView;
|
|
}
|
|
}
|