增加QQ,微信独立分享,界面优化
This commit is contained in:
@ -148,9 +148,15 @@ public class DownloadDialog {
|
||||
private ViewPager collectionViewPager;
|
||||
private LinearLayout collectionLinearLayout;
|
||||
|
||||
//两个全局变量用来定位收缩集合
|
||||
private int colseCollectionPosition;
|
||||
private int colseAdapterPosition;
|
||||
|
||||
private int row;
|
||||
private int column;
|
||||
|
||||
private List<int[]> collectionPositionlist;//存储集合位置
|
||||
|
||||
public void showPopupWindow(View view,
|
||||
GameEntity game,
|
||||
String entrance,
|
||||
@ -315,6 +321,10 @@ public class DownloadDialog {
|
||||
|
||||
// 合并ApkCollection
|
||||
private void mergeApkCollection(GameEntity game) {
|
||||
colseAdapterPosition = -1;
|
||||
colseCollectionPosition = -1;
|
||||
collectionPositionlist = new ArrayList<>();
|
||||
|
||||
collectionAdapterMap = new SparseArray<>();
|
||||
gameCollection = new ArrayList<>();
|
||||
gameCollectionApk = new ArrayList<>();
|
||||
@ -598,8 +608,9 @@ public class DownloadDialog {
|
||||
private TextView download_item_tv_status;
|
||||
private TextView download_item_tv_hint;
|
||||
private ImageView download_item_open_collection;
|
||||
private ProgressBar download_item_progressbar;
|
||||
private ImageView download_item_colse_collection;
|
||||
private ImageView download_item_iv_pic;
|
||||
private ProgressBar download_item_progressbar;
|
||||
|
||||
public RecyclerViewHolder(View convertView) {
|
||||
super(convertView);
|
||||
@ -616,6 +627,8 @@ public class DownloadDialog {
|
||||
.findViewById(R.id.download_item_tv_hint);
|
||||
download_item_open_collection = (ImageView) convertView
|
||||
.findViewById(R.id.download_item_open_collection);
|
||||
download_item_colse_collection = (ImageView) convertView
|
||||
.findViewById(R.id.download_item_colse_collection);
|
||||
}
|
||||
}
|
||||
|
||||
@ -647,20 +660,19 @@ public class DownloadDialog {
|
||||
private class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewHolder> {
|
||||
|
||||
private List<ApkEntity> platforms;
|
||||
private int position;
|
||||
private int adapterPosition;
|
||||
private int count;
|
||||
private int colseCollectionPosition = -1;
|
||||
private int clickCollectionPosition = -1;
|
||||
|
||||
|
||||
public RecyclerViewAdapter(List<ApkEntity> list, int p) {
|
||||
platforms = list;
|
||||
position = p;
|
||||
adapterPosition = p;
|
||||
if (platforms.size() <= (row * column)) {
|
||||
count = platforms.size();
|
||||
} else if (platforms.size() - (row * column) * position >= (row * column)) {
|
||||
} else if (platforms.size() - (row * column) * adapterPosition >= (row * column)) {
|
||||
count = (row * column);
|
||||
} else {
|
||||
count = platforms.size() - (row * column) * position;
|
||||
count = platforms.size() - (row * column) * adapterPosition;
|
||||
}
|
||||
}
|
||||
|
||||
@ -671,25 +683,29 @@ public class DownloadDialog {
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Override
|
||||
public void onBindViewHolder(final RecyclerViewHolder viewHolder, int position) {
|
||||
public void onBindViewHolder(final RecyclerViewHolder viewHolder, final int position) {
|
||||
|
||||
final ApkEntity apkEntity = platforms.get((row * column) * this.position + position);
|
||||
final ApkEntity apkEntity = platforms.get((row * column) * adapterPosition + position);
|
||||
viewHolder.itemView.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (apkEntity.getApkCollection() != null){
|
||||
if (llCollection.getVisibility() == View.GONE
|
||||
|| clickCollectionPosition != viewHolder.getPosition() && clickCollectionPosition != -1){
|
||||
if (viewHolder.download_item_open_collection.getVisibility() == View.VISIBLE){
|
||||
llCollection.setVisibility(View.VISIBLE);
|
||||
showCollectionLayout(apkEntity.getApkCollection());
|
||||
viewHolder.download_item_open_collection.setImageResource(R.drawable.collection_colse);
|
||||
viewHolder.download_item_open_collection.setVisibility(View.GONE);
|
||||
viewHolder.download_item_colse_collection.setVisibility(View.VISIBLE);
|
||||
colseCollectionPosition = viewHolder.getPosition();
|
||||
notifyDataSetChanged();
|
||||
colseAdapterPosition = adapterPosition;
|
||||
for (int[] ints : collectionPositionlist) {
|
||||
adapterMap.get(ints[0]).notifyItemChanged(ints[1]);
|
||||
}
|
||||
} else {
|
||||
llCollection.setVisibility(View.GONE);
|
||||
viewHolder.download_item_open_collection.setImageResource(R.drawable.collection_open);
|
||||
viewHolder.download_item_open_collection.setVisibility(View.VISIBLE);
|
||||
viewHolder.download_item_colse_collection.setVisibility(View.GONE);
|
||||
}
|
||||
clickCollectionPosition = viewHolder.getPosition();
|
||||
|
||||
} else if (viewHolder.download_item_tv_status.getVisibility() == View.GONE) {
|
||||
//下载游戏
|
||||
if (NetworkUtils.isWifiConnected(context)) {
|
||||
@ -922,10 +938,16 @@ public class DownloadDialog {
|
||||
if (apkEntity.getApkCollection() != null){
|
||||
ImageUtils.getInstance(context).display(apkEntity.getApkCollection().getIcon(),viewHolder.download_item_iv_pic);
|
||||
viewHolder.download_item_open_collection.setVisibility(View.VISIBLE);
|
||||
if (colseCollectionPosition == position){
|
||||
viewHolder.download_item_open_collection.setImageResource(R.drawable.collection_colse);
|
||||
|
||||
int[] arrCollectionPosition= {adapterPosition, position};
|
||||
collectionPositionlist.add(arrCollectionPosition);
|
||||
|
||||
if (colseCollectionPosition == position && adapterPosition == colseAdapterPosition){
|
||||
viewHolder.download_item_open_collection.setVisibility(View.GONE);
|
||||
viewHolder.download_item_colse_collection.setVisibility(View.VISIBLE);
|
||||
}else {
|
||||
viewHolder.download_item_open_collection.setImageResource(R.drawable.collection_open);
|
||||
viewHolder.download_item_open_collection.setVisibility(View.VISIBLE);
|
||||
viewHolder.download_item_colse_collection.setVisibility(View.GONE );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user