Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/sheep_develop' into sheep_develop

liujiangyao 7 anni fa
parent
commit
f89d9cf6cc

+ 4 - 2
app/src/main/java/com/kfzs/duanduan/fragment/FgtAskgetmoney.java

@@ -124,7 +124,7 @@ public class FgtAskgetmoney extends BaseCompatFragment {
         GlideImageLoader.setImage(ask_bg, "http://cdngame.kuaifazs.com/yaoqingzq_bg.png");
 //                16,18,19
         LinearLayout.LayoutParams layoutParams1 = (LinearLayout.LayoutParams) ask_top_1.getLayoutParams();
-        layoutParams1.height = G.WIDTH * 660 / 625;
+        layoutParams1.height = G.WIDTH * 560 / 625;
         ask_top_1.setLayoutParams(layoutParams1);
         LinearLayout.LayoutParams layoutParams2 = (LinearLayout.LayoutParams) ask_top_2.getLayoutParams();
         layoutParams2.height = G.WIDTH * 112 / 625;
@@ -252,7 +252,7 @@ public class FgtAskgetmoney extends BaseCompatFragment {
         CommonUtil.getInstance().reflex(indicator, activity);
     }
 
-    @OnClick({R.id.copy_my_invitation_tv, R.id.ask_invite_tv})
+    @OnClick({R.id.copy_my_invitation_tv, R.id.ask_invite_tv, R.id.ask_invite_rl})
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.copy_my_invitation_tv:
@@ -262,6 +262,8 @@ public class FgtAskgetmoney extends BaseCompatFragment {
                 StringUtils.CopyText(userEntity.getInvitation_code()+"");
                 G.showToast("复制邀请码成功");
                 break;
+            case R.id.ask_invite_rl:
+                break;
             case R.id.ask_invite_tv:
                // showShareView();
                 startActivity(new Intent(getActivity(), InvitationActivity.class));

+ 19 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/PictureInvitationEntity.java

@@ -169,4 +169,23 @@ public class PictureInvitationEntity {
     public void setUpdated_at(String updated_at) {
         this.updated_at = updated_at;
     }
+
+
+
+
+
+
+
+
+
+
+    private boolean isLoaded;
+
+    public boolean isLoaded() {
+        return isLoaded;
+    }
+
+    public void setLoaded(boolean loaded) {
+        isLoaded = loaded;
+    }
 }

+ 41 - 10
app/src/main/java/com/sheep/gamegroup/view/activity/InvitationActivity.java

@@ -1,6 +1,7 @@
 package com.sheep.gamegroup.view.activity;
 
 import android.app.Activity;
+import android.graphics.drawable.Drawable;
 import android.os.Bundle;
 import android.support.annotation.Nullable;
 import android.support.v7.app.AppCompatActivity;
@@ -9,14 +10,19 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
 import android.util.Log;
+import android.util.SparseArray;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.alibaba.fastjson.JSONObject;
 import com.bumptech.glide.Glide;
+import com.bumptech.glide.load.DataSource;
+import com.bumptech.glide.load.engine.GlideException;
 import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
+import com.bumptech.glide.request.RequestListener;
 import com.bumptech.glide.request.RequestOptions;
+import com.bumptech.glide.request.target.Target;
 import com.kfzs.appstore.utils.adapter.recyclerview.RecyclerViewAdapter;
 import com.sheep.gamegroup.helper.ScalableCardHelper;
 import com.sheep.gamegroup.model.api.ICallBack;
@@ -110,10 +116,28 @@ public class InvitationActivity extends AppCompatActivity implements ScalableCar
 
         mRecyclerViewAdapter = new RecyclerViewAdapter<PictureInvitationEntity>(mRecyclerView.getContext(), R.layout.item_image2, mPictureList) {
             @Override
-            public void convert(com.kfzs.appstore.utils.adapter.recyclerview.ViewHolder viewHolder, PictureInvitationEntity item, int i) {
+            public void convert(com.kfzs.appstore.utils.adapter.recyclerview.ViewHolder viewHolder, final PictureInvitationEntity item, int i) {
                 ImageView image_full = viewHolder.getView(R.id.image_full);
                 ImageView image_bottom = viewHolder.getView(R.id.image_bottom);
-                GlideImageLoader.roundedCornersImage1(image_full, item.getPicture(), (int) getResources().getDimension(R.dimen.content_padding_8));
+//                GlideImageLoader.roundedCornersImage1(image_full, item.getPicture(), (int) getResources().getDimension(R.dimen.content_padding_8));
+                viewList.put(i, viewHolder.itemView);
+                Glide.with(SheepApp.getInstance())
+                        .load(item.getPicture())
+                        .listener(new RequestListener<Drawable>() {
+                            @Override
+                            public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
+                                item.setLoaded(false);
+                                return false;
+                            }
+
+                            @Override
+                            public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
+                                item.setLoaded(true);
+                                return false;
+                            }
+                        })
+                        .apply(new RequestOptions().centerCrop().transform(new RoundedCorners((int) getResources().getDimension(R.dimen.content_padding_8))))
+                        .into(image_full);
                 GlideImageLoader.saveAndSetRqImage(image_bottom, item.getLink(), 800);
             }
 
@@ -122,7 +146,7 @@ public class InvitationActivity extends AppCompatActivity implements ScalableCar
         ScalableCardHelper cardHelper = new ScalableCardHelper(this);
         cardHelper.attachToRecyclerView(mRecyclerView);
     }
-
+    private SparseArray<View> viewList = new SparseArray<>();
 
     private void init(final String url, final String description) {
         gridLayoutManager = new GridLayoutManager(this, 5);
@@ -168,13 +192,20 @@ public class InvitationActivity extends AppCompatActivity implements ScalableCar
                         switch (position){
                             case 1://qq
                             case 2://wx
-                                try {
-                                    String fileName = String.format(Locale.CHINA, "share%d%s%d.jpg", position, BuildConfig.FLAVOR, mPictureList.get(position).getLink().hashCode());
-                                    file = new File(ClassFileHelper.DIR, fileName);
-                                    if(!file.exists())
-                                        file = ViewUtil.saveImage(mRecyclerView.getChildAt(curPosition).findViewById(R.id.layout_view), ClassFileHelper.DIR, fileName);
-                                } catch (Exception e) {
-                                    e.printStackTrace();
+                                PictureInvitationEntity picItem = ListUtil.getItem(mPictureList, curPosition);
+                                if(picItem != null && picItem.isLoaded()) {
+                                    try {
+                                        String fileName = String.format(Locale.CHINA, "share%d%s%d.jpg", position, BuildConfig.FLAVOR, picItem.getPicture().hashCode());
+                                        file = new File(ClassFileHelper.DIR, fileName);
+                                        if (!file.exists()) {
+                                            file = ViewUtil.saveImage(viewList.get(curPosition), ClassFileHelper.DIR, fileName);
+                                        }
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                } else {
+                                    G.showToast("图片正在加载中,请稍等");
+                                    return;
                                 }
                                 break;
 

+ 1 - 0
app/src/main/res/layout/x_ask_getmoney_act_layout.xml

@@ -2,6 +2,7 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
+    android:id="@+id/ask_invite_rl"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     tools:context="com.sheep.gamegroup.view.activity.AskGetMoneyAct">