Parcourir la source

删除不需要的

yuanshenglan il y a 7 ans
Parent
commit
a68bb4702f
28 fichiers modifiés avec 1479 ajouts et 157 suppressions
  1. 2 0
      app/src/main/AndroidManifest.xml
  2. 4 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtAskgetmoney.java
  3. 228 0
      app/src/main/java/com/sheep/gamegroup/helper/ScalableCardHelper.java
  4. 19 5
      app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java
  5. 125 0
      app/src/main/java/com/sheep/gamegroup/model/entity/MessageUserFeedbackEntity.java
  6. 172 0
      app/src/main/java/com/sheep/gamegroup/model/entity/PictureInvitationEntity.java
  7. 33 25
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  8. 2 0
      app/src/main/java/com/sheep/gamegroup/util/GlideImageLoader.java
  9. 17 84
      app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java
  10. 432 0
      app/src/main/java/com/sheep/gamegroup/view/activity/InvitationActivity.java
  11. 13 9
      app/src/main/java/com/sheep/gamegroup/view/activity/MessageReplyDetailActivity.java
  12. 42 1
      app/src/main/java/com/sheep/gamegroup/view/activity/MessagesActivity.java
  13. 119 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/InvitationPictureAdapter.java
  14. 8 10
      app/src/main/java/com/sheep/gamegroup/view/adapter/MessageInteractionAdapter.java
  15. 5 1
      app/src/main/java/com/sheep/gamegroup/view/adapter/MessageLeftAdapter.java
  16. 5 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/MessageRightAdapter.java
  17. 63 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/MyAdapter.java
  18. 7 0
      app/src/main/java/com/sheep/gamegroup/view/fragment/MessageCenterFragment.java
  19. 7 0
      app/src/main/java/com/sheep/gamegroup/view/fragment/MessageReplyFragment.java
  20. 123 0
      app/src/main/res/layout/activity_invitation.xml
  21. 2 2
      app/src/main/res/layout/activity_messages.xml
  22. 1 1
      app/src/main/res/layout/activity_messagesystem.xml
  23. 21 0
      app/src/main/res/layout/adapter_invitationpictureadapter.xml
  24. 1 2
      app/src/main/res/layout/adapter_message_left_fragment.xml
  25. 13 15
      app/src/main/res/layout/ask_to_share.xml
  26. 2 1
      app/src/main/res/layout/layout_fragment_mseeages.xml
  27. 13 0
      app/src/main/res/layout/view_image.xml
  28. BIN
      app/src/main/res/mipmap-xxhdpi/icon_unread.png

+ 2 - 0
app/src/main/AndroidManifest.xml

@@ -595,6 +595,8 @@
             android:exported="true"/>
         <activity android:name="com.sheep.gamegroup.view.activity.MessageCenterDetailActivity"
             android:exported="true"/>
+        <activity android:name="com.sheep.gamegroup.view.activity.InvitationActivity"
+            android:exported="true"/>
 
         <!--start幂动科技-->
 

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

@@ -2,6 +2,7 @@ package com.kfzs.duanduan.fragment;
 
 import android.annotation.SuppressLint;
 import android.app.Activity;
+import android.content.Intent;
 import android.os.Bundle;
 import android.support.design.widget.TabLayout;
 import android.support.v4.widget.NestedScrollView;
@@ -27,6 +28,7 @@ import com.sheep.gamegroup.util.FastJsonUtils;
 import com.sheep.gamegroup.util.GlideImageLoader;
 import com.sheep.gamegroup.util.StringUtils;
 import com.sheep.gamegroup.util.ViewUtil;
+import com.sheep.gamegroup.view.activity.InvitationActivity;
 import com.sheep.gamegroup.view.fragment.FgtAskGetMoneyFriend;
 import com.sheep.gamegroup.view.fragment.FgtAskGetMoneyRank;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
@@ -261,7 +263,8 @@ public class FgtAskgetmoney extends BaseCompatFragment {
                 G.showToast("复制邀请码成功");
                 break;
             case R.id.ask_invite_tv:
-                showShareView();
+               // showShareView();
+                startActivity(new Intent(getActivity(), InvitationActivity.class));
                 break;
         }
     }

+ 228 - 0
app/src/main/java/com/sheep/gamegroup/helper/ScalableCardHelper.java

@@ -0,0 +1,228 @@
+package com.sheep.gamegroup.helper;
+
+import android.graphics.Rect;
+import android.support.v7.widget.PagerSnapHelper;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.View;
+import android.view.ViewGroup;
+
+import java.lang.ref.WeakReference;
+
+public class ScalableCardHelper {
+
+    private static final float STAY_SCALE = 0.8f;
+
+    private String TAG = "ScalableCardHelper";
+    private PagerSnapHelper snapHelper = new PagerSnapHelper();
+    private RecyclerView recyclerView;
+    private WeakReference<OnPageChangeListener> pageChangeListenerRef;
+
+    private RecyclerView.OnScrollListener scrollListener = new RecyclerView.OnScrollListener() {
+
+        @Override
+        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
+            pageScrolled();
+        }
+    };
+
+
+    public ScalableCardHelper(OnPageChangeListener pageChangeListener) {
+        if(pageChangeListener != null)
+            this.pageChangeListenerRef = new WeakReference<>(pageChangeListener);
+    }
+
+
+  /*  public ScalableCardHelper( ) {
+        this(null);
+    }*/
+
+    private void pageScrolled() {
+        if (recyclerView == null || recyclerView.getChildCount() == 0)
+            return;
+
+        RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
+
+        View snapingView = snapHelper.findSnapView(layoutManager);
+        int snapingViewPosition = recyclerView.getChildAdapterPosition(snapingView);
+        View leftSnapingView = layoutManager.findViewByPosition(snapingViewPosition - 1);
+        View rightSnapingView = layoutManager.findViewByPosition(snapingViewPosition + 1);
+
+
+        float leftSnapingOffset = calculateOffset(recyclerView, leftSnapingView);
+        float rightSnapingOffset = calculateOffset(recyclerView, rightSnapingView);
+        float currentSnapingOffset = calculateOffset(recyclerView, snapingView);
+
+        if (snapingView != null) {
+            snapingView.setScaleX(currentSnapingOffset);
+            snapingView.setScaleY(currentSnapingOffset);
+        }
+
+        if (leftSnapingView != null) {
+            leftSnapingView.setScaleX(leftSnapingOffset);
+            leftSnapingView.setScaleY(leftSnapingOffset);
+        }
+
+        if (rightSnapingView != null) {
+            rightSnapingView.setScaleX(rightSnapingOffset);
+            rightSnapingView.setScaleY(rightSnapingOffset);
+        }
+
+
+        if(snapingView != null && currentSnapingOffset >= 1){
+            OnPageChangeListener listener = pageChangeListenerRef != null ? pageChangeListenerRef.get(): null;
+            if(listener != null)
+                listener.onPageSelected(snapingViewPosition);
+        }
+
+        Log.d(TAG, String.format("left: %f, right: %f, current: %f", leftSnapingOffset, rightSnapingOffset, currentSnapingOffset));
+    }
+
+
+    public int getCurrentPage(){
+        View page = snapHelper.findSnapView(recyclerView.getLayoutManager());
+        if(page == null)
+            return -1;
+
+        return recyclerView.getChildAdapterPosition(page);
+    }
+
+
+    public void attachToRecyclerView(final RecyclerView recyclerView) {
+        this.recyclerView = recyclerView;
+        snapHelper.attachToRecyclerView(recyclerView);
+        recyclerView.addOnScrollListener(scrollListener);
+        recyclerView.addItemDecoration(new ScalableCardItemDecoration());
+        recyclerView.post(new Runnable() {
+            @Override
+            public void run() {
+                pageScrolled();
+            }
+        });
+    }
+
+    /**
+     * 通过计算{@code view}中间点与{@link RecyclerView}的中间点的距离,算出{@code view}的偏移量。
+     *
+     * @param view              view
+     * @return
+     */
+    private float calculateOffset(RecyclerView recyclerView, View view) {
+        if (view == null)
+            return -1;
+
+
+        RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
+        boolean isVertical = layoutManager.canScrollVertically();
+        int viewStart = isVertical ? view.getTop() : view.getLeft();
+        int viewEnd = isVertical ? view.getBottom() : view.getRight();
+        int centerX = isVertical ? recyclerView.getHeight() / 2 : recyclerView.getWidth() / 2;
+        int childCenter = (viewStart + viewEnd) / 2;
+        int distance =   Math.abs(childCenter - centerX);
+
+        if (distance > centerX)
+            return STAY_SCALE;
+
+        float offset = 1.f - (distance / (float) centerX);
+        return (1.f - STAY_SCALE) * offset + STAY_SCALE;
+    }
+
+
+    public void detachFromRecyclerView(RecyclerView recyclerView) {
+        if (recyclerView != null)
+            recyclerView.removeOnScrollListener(scrollListener);
+        this.recyclerView = null;
+    }
+
+    public interface OnPageChangeListener{
+        void onPageSelected(int position);
+    }
+
+
+
+
+
+    public static int getPeekWidth(RecyclerView recyclerView, View itemView) {
+        RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
+        boolean isVertical = layoutManager.canScrollVertically();
+        int position = recyclerView.getChildAdapterPosition(itemView);
+        //TODO RecyclerView使用wrap_content时,获取的宽度可能会是0。
+        int parentWidth = recyclerView.getMeasuredWidth();
+        int parentHeight = recyclerView.getMeasuredHeight(); //有时会拿到0
+        parentWidth = parentWidth == 0 ? recyclerView.getWidth() : parentWidth;
+        parentHeight = parentHeight == 0 ? recyclerView.getHeight() : parentHeight;
+        int parentEnd = isVertical ? parentHeight : parentWidth;
+        int parentCenter = parentEnd / 2;
+
+        int itemSize = isVertical ? itemView.getMeasuredHeight() : itemView.getMeasuredWidth();
+
+        if (itemSize == 0) {
+
+            ViewGroup.LayoutParams layoutParams = itemView.getLayoutParams();
+            int widthMeasureSpec =
+                    RecyclerView.LayoutManager.getChildMeasureSpec(parentWidth,
+                            layoutManager.getWidthMode(),
+                            recyclerView.getPaddingLeft() + recyclerView.getPaddingRight(),
+                            layoutParams.width, layoutManager.canScrollHorizontally());
+
+            int heightMeasureSpec =
+                    RecyclerView.LayoutManager.getChildMeasureSpec(parentHeight,
+                            layoutManager.getHeightMode(),
+                            recyclerView.getPaddingTop() + recyclerView.getPaddingBottom(),
+                            layoutParams.height, layoutManager.canScrollVertically());
+
+
+            itemView.measure(widthMeasureSpec, heightMeasureSpec);
+            itemSize = isVertical ? itemView.getMeasuredHeight() : itemView.getMeasuredWidth();
+        }
+
+
+        /*
+            计算ItemDecoration的大小,确保插入的大小正好使view的start + itemSize / 2等于parentCenter。
+         */
+        int startOffset = parentCenter - itemSize / 2;
+        int endOffset = parentEnd - (startOffset + itemSize);
+
+        return position == 0 ? startOffset : endOffset;
+    }
+
+
+    private static class ScalableCardItemDecoration extends RecyclerView.ItemDecoration {
+
+
+        @Override
+        public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
+            RecyclerView.ViewHolder holder = parent.getChildViewHolder(view);
+            int position = holder.getAdapterPosition() == RecyclerView.NO_POSITION ? holder.getOldPosition() : holder.getAdapterPosition();
+            RecyclerView.LayoutManager layoutManager = parent.getLayoutManager();
+            int itemCount = layoutManager.getItemCount();
+
+            if(position != 0 && position != itemCount - 1){
+                return;
+            }
+
+            int peekWidth = getPeekWidth(parent, view);
+            boolean isVertical = layoutManager.canScrollVertically();
+            //移除item时adapter position为-1。
+
+            if (isVertical) {
+                if (position == 0) {
+                    outRect.set(0, peekWidth, 0, 0);
+                } else if (position == itemCount - 1) {
+                    outRect.set(0, 0, 0, peekWidth);
+                } else {
+                    outRect.set(0, 0, 0, 0);
+                }
+            } else {
+                if (position == 0) {
+                    outRect.set(peekWidth, 0, 0, 0);
+                } else if (position == itemCount - 1) {
+                    outRect.set(0, 0, peekWidth, 0);
+                } else {
+                    outRect.set(0, 0, 0, 0);
+                }
+            }
+        }
+    }
+
+}

+ 19 - 5
app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java

@@ -58,25 +58,33 @@ public interface ApiService {
     Observable<BaseMessage> getMessageReply(@Query("page") int page, @Query("per_page") int per_page);
 
     /**
-     * @param id  回复互动id
+     * @param id 回复互动id
      * @return 回复互动详情
      */
     @GET("app/message/system_message/{id}")
     Observable<BaseMessage> getMessageReplyItem(@Path("id") String id);
 
     /**
-     * @param id  系统消息id
+     * @param id 系统消息id
      * @return 消息中心详情
      */
     @GET("app/message/system_notification/{id}")
     Observable<BaseMessage> getMessageCenterItem(@Path("id") String id);
 
     /**
-     * @return  获取未读消息条数 返回 0 或者 未读数量 大于零则有未读
+     * @return 获取未读消息条数 返回 0 或者 未读数量 大于零则有未读
      * 获取未读消息条数
      */
-    @GET("app/message/system_message/no_read_num")
-    Observable<BaseMessage>getMessageUnReadNum();
+    @GET("app/message/system_message/no_read_num/")
+    Observable<BaseMessage> getMessageUnReadNum();
+
+    /**
+     * 获取邀请图片列表
+     *
+     * @return
+     */
+    @GET("app/user/promotions/")
+    Observable<BaseMessage> getSharePicture();
 
     /**
      * @return ,
@@ -900,31 +908,37 @@ public interface ApiService {
      */
     @GET("app/gift_bag")
     Observable<BaseMessage> getGiftBagList(@Query("page") int page, @Query("per_page") int per_page);
+
     /**
      * 我的福利——我的礼包
      */
     @GET("app/gift_bag/my_gift_bag")
     Observable<BaseMessage> getMyGiftBagList(@Query("page") int page, @Query("per_page") int per_page);
+
     /**
      * 获取热门福利
      */
     @GET("app/release_task/hot_welfare")
     Observable<BaseMessage> getHotWelfareList(/*@Query("page") int page, @Query("per_page") int per_page*/);
+
     /**
      * 下载福利
      */
     @GET("app/release_task/down_welfare")
     Observable<BaseMessage> getDownWelfareList(@Query("page") int page, @Query("per_page") int per_page);
+
     /**
      * 我的福利——下载福利
      */
     @GET("app/game_consumption/my_voucher")
     Observable<BaseMessage> getMyWelfareList(@Query("page") int page, @Query("per_page") int per_page);
+
     /**
      * 我的福利——使用记录
      */
     @GET("app/game_consumption/voucher_use_log")
     Observable<BaseMessage> getMyWelfareLogList(@Query("page") int page, @Query("per_page") int per_page);
+
     /**
      * 玩转游戏——每日必玩
      * 玩转游戏——近期最热

+ 125 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/MessageUserFeedbackEntity.java

@@ -0,0 +1,125 @@
+package com.sheep.gamegroup.model.entity;
+
+import java.io.Serializable;
+
+/**
+ * created on:2018/9/4 on 9:57
+ * created by: YSL
+ * 描述:
+ */
+public class MessageUserFeedbackEntity implements Serializable{
+
+    /**
+     * user_feedback_id : 39
+     * faq_feedback_id : 0
+     * title : 用户反馈
+     * id : 3
+     * user_contet : 哈哈哈
+     * created_at : 1535507567
+     * user_create_time : 1535449387
+     * is_look : 1
+     * content : 123
+     * type : 2
+     * user_id : 63075
+     */
+
+    private int user_feedback_id;
+    private int faq_feedback_id;
+    private String title;
+    private int id;
+    private String user_contet;
+    private int created_at;
+    private int user_create_time;
+    private int is_look;
+    private String content;
+    private int type;
+    private int user_id;
+
+    public int getUser_feedback_id() {
+        return user_feedback_id;
+    }
+
+    public void setUser_feedback_id(int user_feedback_id) {
+        this.user_feedback_id = user_feedback_id;
+    }
+
+    public int getFaq_feedback_id() {
+        return faq_feedback_id;
+    }
+
+    public void setFaq_feedback_id(int faq_feedback_id) {
+        this.faq_feedback_id = faq_feedback_id;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public int getId() {
+        return id;
+    }
+
+    public void setId(int id) {
+        this.id = id;
+    }
+
+    public String getUser_contet() {
+        return user_contet;
+    }
+
+    public void setUser_contet(String user_contet) {
+        this.user_contet = user_contet;
+    }
+
+    public int getCreated_at() {
+        return created_at;
+    }
+
+    public void setCreated_at(int created_at) {
+        this.created_at = created_at;
+    }
+
+    public int getUser_create_time() {
+        return user_create_time;
+    }
+
+    public void setUser_create_time(int user_create_time) {
+        this.user_create_time = user_create_time;
+    }
+
+    public int getIs_look() {
+        return is_look;
+    }
+
+    public void setIs_look(int is_look) {
+        this.is_look = is_look;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public int getUser_id() {
+        return user_id;
+    }
+
+    public void setUser_id(int user_id) {
+        this.user_id = user_id;
+    }
+}

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

@@ -0,0 +1,172 @@
+package com.sheep.gamegroup.model.entity;
+
+/**
+ * created on:2018/9/4 on 10:54
+ * created by: YSL
+ * 描述:
+ */
+public class PictureInvitationEntity {
+
+    /**
+     * click_count : 0
+     * created_at : string
+     * flag : string
+     * id : 0
+     * link : string
+     * name : string
+     * picture : string
+     * register_count : 0
+     * remark : string
+     * share_count : 0
+     * status : 0
+     * type : 0
+     * updated_at : string
+     */
+    /**
+     * 点击数量
+     */
+    private int click_count;
+    /**
+     *
+     */
+    private String created_at;
+    /**
+     * 唯一code
+     */
+    private String flag;
+    private int id;
+    /**
+     * 推广的二维码链接
+     */
+    private String link;
+    private String name;
+    /**
+     * 二维码背景图片
+     */
+    private String picture;
+    /**
+     * 注册数量
+     */
+    private int register_count;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 分享数量
+     */
+    private int share_count;
+    /**
+     * 1:开启 2:关闭
+     */
+    private int status;
+    /**
+     * 1:APP推广 2:广告商
+     */
+    private int type;
+    private String updated_at;
+
+    public int getClick_count() {
+        return click_count;
+    }
+
+    public void setClick_count(int click_count) {
+        this.click_count = click_count;
+    }
+
+    public String getCreated_at() {
+        return created_at;
+    }
+
+    public void setCreated_at(String created_at) {
+        this.created_at = created_at;
+    }
+
+    public String getFlag() {
+        return flag;
+    }
+
+    public void setFlag(String flag) {
+        this.flag = flag;
+    }
+
+    public int getId() {
+        return id;
+    }
+
+    public void setId(int id) {
+        this.id = id;
+    }
+
+    public String getLink() {
+        return link;
+    }
+
+    public void setLink(String link) {
+        this.link = link;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getPicture() {
+        return picture;
+    }
+
+    public void setPicture(String picture) {
+        this.picture = picture;
+    }
+
+    public int getRegister_count() {
+        return register_count;
+    }
+
+    public void setRegister_count(int register_count) {
+        this.register_count = register_count;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public int getShare_count() {
+        return share_count;
+    }
+
+    public void setShare_count(int share_count) {
+        this.share_count = share_count;
+    }
+
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public String getUpdated_at() {
+        return updated_at;
+    }
+
+    public void setUpdated_at(String updated_at) {
+        this.updated_at = updated_at;
+    }
+}

+ 33 - 25
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -761,12 +761,13 @@ public class CommonUtil {
         s = null;
         timerHashMap.clear();
     }
+
     /**
-     *
      * 分享
+     *
      * @param activity
      * @param url
-     * @param type qq wx all
+     * @param type        qq wx all
      * @param description
      */
     public void popShare(Activity activity, final String url, @DialogShare.SHARE_TYPE String type, String description) {
@@ -806,6 +807,9 @@ public class CommonUtil {
                 share_media = SHARE_MEDIA.WEIXIN_CIRCLE;
                 break;
         }
+        if (type == DialogShare.QQ) {
+            UMImage umImage = new UMImage(activity, R.mipmap.icon);
+        }
         UMImage umImage = new UMImage(activity, R.mipmap.icon);
         UMWeb umWeb = new UMWeb(realUrl);
         umWeb.setTitle(activity.getResources().getString(R.string.app_name));
@@ -820,6 +824,7 @@ public class CommonUtil {
 
     /**
      * 分享
+     *
      * @param activity
      * @param url
      * @param type
@@ -828,7 +833,7 @@ public class CommonUtil {
         popShare(activity, url, type, null);
     }
 
-    class UMShareListener implements com.umeng.socialize.UMShareListener {
+   public static class UMShareListener implements com.umeng.socialize.UMShareListener {
 
         @Override
         public void onStart(SHARE_MEDIA share_media) {
@@ -843,7 +848,7 @@ public class CommonUtil {
         @Override
         public void onError(SHARE_MEDIA share_media, Throwable throwable) {
             String msg = throwable.getMessage();
-            G.showToast(msg != null && msg.contains("没有安装应用") ? "没有安装应用": msg);
+            G.showToast(msg != null && msg.contains("没有安装应用") ? "没有安装应用" : msg);
             LogUtil.println("UMShareListener", "error", share_media.getName() +
                     ",msg:" + throwable.getMessage());
         }
@@ -920,13 +925,13 @@ public class CommonUtil {
                     .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                         @Override
                         public void onError(BaseMessage baseMessage) {
-                            if(action1 != null)
+                            if (action1 != null)
                                 action1.call(null);
                         }
 
                         @Override
                         public void onNext(BaseMessage baseMessage) {
-                            if(action1 != null){
+                            if (action1 != null) {
                                 if (name == null) {
                                     return;
                                 }
@@ -942,7 +947,7 @@ public class CommonUtil {
                     });
         } else {
             String url = url_config.getString(name);
-            if(action1 != null)
+            if (action1 != null)
                 action1.call(url);
         }
     }
@@ -1574,14 +1579,14 @@ public class CommonUtil {
                 return;
             }
             if (NetUtil.isConnected(SheepApp.getInstance())) {
-                if(isNetImg){
+                if (isNetImg) {
                     GlideImageLoader.setImage(empty_view_img, ViewUtil.getNetImgByName("wushuju"));
                 } else {
                     empty_view_img.setImageResource(R.mipmap.wushuju);
                 }
                 empty_view_msg.setText(R.string.wushuju);
             } else {
-                if(isNetImg){
+                if (isNetImg) {
                     GlideImageLoader.setImage(empty_view_img, ViewUtil.getNetImgByName("wushuju_net_error"));
                 } else {
                     empty_view_img.setImageResource(R.mipmap.wushuju_net_error);
@@ -1734,8 +1739,8 @@ public class CommonUtil {
     /**
      * 分享 url type 拼接
      */
-    public String jointString(String url,@DialogShare.SHARE_TYPE String type) {
-        if(url.contains("&type="))
+    public String jointString(String url, @DialogShare.SHARE_TYPE String type) {
+        if (url.contains("&type="))
             return url;
         switch (type) {
             case "qq":
@@ -1750,7 +1755,7 @@ public class CommonUtil {
     /**
      * js 下载
      */
-    public void showDownLoad(final Activity activity, String url, final String name){
+    public void showDownLoad(final Activity activity, String url, final String name) {
         OkHttpUtils.get()
                 .url(url)
                 .build()
@@ -1772,10 +1777,11 @@ public class CommonUtil {
                     }
                 });
     }
+
     /**
      * 获取用户未做任务金额
      */
-    public void getUserNoDoingTaskMoney(final Action1<BaseMessage> action1){
+    public void getUserNoDoingTaskMoney(final Action1<BaseMessage> action1) {
 
         SheepApp.getInstance().getNetComponent().getApiService().getCanREceiveAwar()
                 .subscribeOn(Schedulers.io())
@@ -1800,7 +1806,7 @@ public class CommonUtil {
     /**
      * 任务审核
      */
-    public void staticAudit(final Action1<BaseMessage> action1){
+    public void staticAudit(final Action1<BaseMessage> action1) {
 
         SheepApp.getInstance().getNetComponent().getApiService().staticAudit()
                 .subscribeOn(Schedulers.io())
@@ -1825,7 +1831,7 @@ public class CommonUtil {
     /**
      * 获取任务记录列表
      */
-    public void getAudit(final Action1<BaseMessage> action1,int page, int pre_page, int type){
+    public void getAudit(final Action1<BaseMessage> action1, int page, int pre_page, int type) {
         SheepApp.getInstance().getNetComponent().getApiService().acceptedTask(page, pre_page, type)
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
@@ -1862,6 +1868,7 @@ public class CommonUtil {
 
     /**
      * 设置游戏标识文本,如:现金,福利
+     *
      * @param textView
      * @param taskReleaseEty
      */
@@ -1871,21 +1878,21 @@ public class CommonUtil {
         textView.setBackgroundResource(R.drawable.shape_red_stroke_rectangle_no_lb);
         textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 9);
         int padding = textView.getContext().getResources().getDimensionPixelSize(R.dimen.content_padding_2);
-        textView.setPadding(4*padding, padding, 4*padding, padding);
+        textView.setPadding(4 * padding, padding, 4 * padding, padding);
     }
 
     /**
      * 唤醒业务打开app内容成功后回调
      */
-    public void awakenDetail(RouserArticlesEntity item){
-        long longTime = AppUsageManager.getInstance().getAppLastUseTime(item.getPackage_name(),0);
+    public void awakenDetail(RouserArticlesEntity item) {
+        long longTime = AppUsageManager.getInstance().getAppLastUseTime(item.getPackage_name(), 0);
         int status = 2;
-        if(longTime <= 0){
+        if (longTime <= 0) {
             status = 1;
-        }else {
-            for(int i=0;i<31;i++){
-                if(item.getType() == i){
-                    if (System.currentTimeMillis() - i * 24 * 60 * 60 * 1000 >longTime) {
+        } else {
+            for (int i = 0; i < 31; i++) {
+                if (item.getType() == i) {
+                    if (System.currentTimeMillis() - i * 24 * 60 * 60 * 1000 > longTime) {
                         status = 2;
                     } else {
                         status = 1;
@@ -1897,7 +1904,7 @@ public class CommonUtil {
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("awaken_articles_id", item.getId());
         jsonObject.put("invitation_code", DataUtil.getInstance().getInvitationCode());
-        jsonObject.put("status",status);
+        jsonObject.put("status", status);
         SheepApp.getInstance().getNetComponent().getApiService().awakenDetail(jsonObject)
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
@@ -1913,8 +1920,9 @@ public class CommonUtil {
                     }
                 });
     }
+
     public void clickBanner(Activity activity, int position, List<SlideshowEty> slideshowEtyLists) {
-        SlideshowEty clickedGameObj =  ListUtil.getItem(slideshowEtyLists, position);
+        SlideshowEty clickedGameObj = ListUtil.getItem(slideshowEtyLists, position);
         if (clickedGameObj == null) {
             return;
         }

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/util/GlideImageLoader.java

@@ -5,6 +5,7 @@ import android.graphics.Bitmap;
 import android.graphics.Color;
 import android.net.Uri;
 import android.text.TextUtils;
+import android.util.Log;
 import android.widget.ImageView;
 
 import com.bumptech.glide.Glide;
@@ -108,6 +109,7 @@ public class GlideImageLoader {
      * @param w
      */
     public static void saveAndSetRqImage(final ImageView imageView, String link, int w) {
+        LogUtil.logI("二维码链接-----"+link);
         String fileName = String.format(Locale.CHINA, "%d.png", link.hashCode());
         File file = new File(ClassFileHelper.DIR, fileName);
         if(!file.exists()){

+ 17 - 84
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -22,6 +22,7 @@ import android.support.v4.app.FragmentActivity;
 import android.support.v7.app.AlertDialog;
 import android.support.v7.widget.GridLayoutManager;
 import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.OrientationHelper;
 import android.support.v7.widget.RecyclerView;
 import android.text.Html;
 import android.text.TextUtils;
@@ -64,6 +65,7 @@ import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.entity.GameAccountEntity;
 import com.sheep.gamegroup.model.entity.HomeListEntity;
 import com.sheep.gamegroup.model.entity.PayEntity;
+import com.sheep.gamegroup.model.entity.PictureInvitationEntity;
 import com.sheep.gamegroup.model.entity.RobTask;
 import com.sheep.gamegroup.model.entity.Welfare;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
@@ -72,6 +74,7 @@ import com.sheep.gamegroup.view.activity.PersonalInfoAct;
 import com.sheep.gamegroup.view.activity.SplashAct;
 import com.sheep.gamegroup.view.activity.TaskDetailAct;
 import com.sheep.gamegroup.view.adapter.AdbCommonRecycler;
+import com.sheep.gamegroup.view.adapter.InvitationPictureAdapter;
 import com.sheep.gamegroup.view.dialog.DialogAddAccount;
 import com.sheep.gamegroup.view.dialog.DialogModifyAccount;
 import com.sheep.gamegroup.view.dialog.DialogOrienteeringDetails;
@@ -96,6 +99,7 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.Random;
 
+import rx.Scheduler;
 import rx.android.schedulers.AndroidSchedulers;
 import rx.functions.Action1;
 import rx.schedulers.Schedulers;
@@ -222,15 +226,11 @@ public class ViewUtil {
                     public void onNext(BaseMessage baseMessage) {
                         try {
                             mRobTask = baseMessage.getData(RobTask.class);
-                            LogUtil.logI(SpUtils.getOrder("order") + "保存后的order");
                             SpUtils.saveOrder("order", mRobTask.getOrder());
-                            LogUtil.logI("---mRobTask" + new Gson().toJson(mRobTask));
-                            LogUtil.logI("---" + new Gson().toJson(baseMessage));
                             tvDutyMoney.setText(mRobTask.getM().getBonus() + "元");//设置任务奖励金额
                             tvTitel.setText(mRobTask.getM().getTask().getTask_name());//设置任务名字
                             GlideImageLoader.setImage(ivIcon, mRobTask.getM().getTask().getIcon());//设置任务图标
                         } catch (Exception e) {
-
                         }
                     }
 
@@ -370,13 +370,13 @@ public class ViewUtil {
             public boolean onLongClick(View view) {
                 // 获取系统剪贴板
                 ClipboardManager clipboard = (ClipboardManager) mActivity.getSystemService(Context.CLIPBOARD_SERVICE);
-               // 获取剪贴板的剪贴数据集
+                // 获取剪贴板的剪贴数据集
                 ClipData clipData = clipboard.getPrimaryClip();
 
                 if (clipData != null && clipData.getItemCount() > 0) {
                     // 从数据集中获取(粘贴)第一条文本数据
                     CharSequence codetext = clipData.getItemAt(0).getText();
-                    if (!TextUtils.isEmpty(codetext)){
+                    if (!TextUtils.isEmpty(codetext)) {
                         edInvitationCode.setText(codetext);
                     }
                 }
@@ -1338,78 +1338,6 @@ public class ViewUtil {
 
     }
 
-    /**
-     * 初始化画廊
-     *
-     * @param mRecyclerView ,recycleView
-     * @param mBlurView     显示的ImageView
-     * @param mList         图片文件地址集合,
-     * @param context       。。。
-     */
-    private static void init(SpeedRecyclerView mRecyclerView, ImageView mBlurView, List<Integer> mList, Context context) {
-        if (mList == null) {
-            mList = new ArrayList<>();
-        }
-        for (int i = 0; i < 10; i++) {
-            mList.add(R.drawable.kaipin);
-            mList.add(R.drawable.kaipin);
-            mList.add(R.drawable.kaipin);
-        }
-
-        final LinearLayoutManager linearLayoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
-        mRecyclerView.setLayoutManager(linearLayoutManager);
-        mRecyclerView.setAdapter(new CardAdapter(mList));
-        // mRecyclerView绑定scale效果
-        mCardScaleHelper.setCurrentItemPos(2);
-        mCardScaleHelper.attachToRecyclerView(mRecyclerView);
-
-        initBlurBackground(mBlurView, mRecyclerView, mList, context);
-    }
-
-    /**
-     * 给画廊设置背景
-     *
-     * @param mBlurView
-     * @param mRecyclerView
-     * @param mList
-     * @param context
-     */
-    private static void initBlurBackground(ImageView mBlurView, RecyclerView mRecyclerView, final List<Integer> mList, final Context context) {
-        final ImageView finalMBlurView = mBlurView;
-        mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
-            @Override
-            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
-                super.onScrollStateChanged(recyclerView, newState);
-                if (newState == RecyclerView.SCROLL_STATE_IDLE) {
-                    notifyBackgroundChange(finalMBlurView, mList, context);
-                }
-            }
-        });
-
-        notifyBackgroundChange(mBlurView, mList, context);
-    }
-
-    /**
-     * 检测画廊图片变化
-     *
-     * @param mBlurView
-     * @param mList
-     * @param context
-     */
-    private static void notifyBackgroundChange(final ImageView mBlurView, List<Integer> mList, final Context context) {
-        if (mLastPos == mCardScaleHelper.getCurrentItemPos()) return;
-        mLastPos = mCardScaleHelper.getCurrentItemPos();
-        final int resId = mList.get(mCardScaleHelper.getCurrentItemPos());
-        mBlurView.removeCallbacks(mBlurRunnable);
-        mBlurRunnable = new Runnable() {
-            @Override
-            public void run() {
-                Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resId);
-                ViewSwitchUtils.startSwitchBackgroundAnim(mBlurView, BlurBitmapUtils.getBlurBitmap(mBlurView.getContext(), bitmap, 15));
-            }
-        };
-        mBlurView.postDelayed(mBlurRunnable, 500);
-    }
 
     /**
      * 添加游戏账户
@@ -1419,7 +1347,7 @@ public class ViewUtil {
     }
 
     public static void showShareDialog(final Activity activity, final String url, final String description) {
-        View dialog_parent = View.inflate(activity, R.layout.ask_to_share, null);
+        View dialog_parent = View.inflate(activity, R.layout.activity_invitation, null);
         final AlertDialog dialog = new AlertDialog.Builder(activity, R.style.AppTheme_Dialog_Alert)
                 .setView(dialog_parent).setCancelable(true)
                 .create();
@@ -1431,11 +1359,12 @@ public class ViewUtil {
         windows.setWindowAnimations(R.style.Rising);//设置动画效果
         View viewEmpty = dialog_parent.findViewById(R.id.empty_view);
         //SpeedRecyclerView speedRecyclerView = dialog_parent.findViewById(R.id.recyclerView);
-       // ImageView card = dialog_parent.findViewById(R.id.blurView);
-       // List<Integer> mList = new ArrayList<>();
-       // init(speedRecyclerView, card, mList, activity);
-//        TextView ask_share_title = dialog_parent.findViewById(R.id.ask_share_title);
-        RecyclerView ask_share_list = dialog_parent.findViewById(R.id.ask_share_list);
+        // ImageView card = dialog_parent.findViewById(R.id.blurView);
+        // List<Integer> mList = new ArrayList<>();
+
+        TextView tv_invitation_code = dialog_parent.findViewById(R.id.tv_invitation_code);//邀请码
+        RecyclerView recycle_picture = dialog_parent.findViewById(R.id.recycle_picture);//邀请码的recycleview
+        RecyclerView ask_share_list = dialog_parent.findViewById(R.id.ask_share_list);//分享链接
         GridLayoutManager gridLayoutManager = new GridLayoutManager(activity, 5);
         ask_share_list.setLayoutManager(gridLayoutManager);
 //        ask_share_list.setHasFixedSize(true);
@@ -1503,8 +1432,10 @@ public class ViewUtil {
         } catch (Exception e) {
             e.printStackTrace();
         }
+
     }
 
+
     public static String getNetImgByName(String name) {
         return String.format(Locale.CHINA, "http://cdngame.kuaifazs.com/%s.png", name);
     }
@@ -1554,4 +1485,6 @@ public class ViewUtil {
         }
         return result;
     }
+
+
 }

+ 432 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/InvitationActivity.java

@@ -0,0 +1,432 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.annotation.SuppressLint;
+import android.app.Activity;
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Canvas;
+import android.graphics.Matrix;
+import android.os.Bundle;
+import android.os.Environment;
+import android.os.Handler;
+import android.os.Message;
+import android.support.annotation.Nullable;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.GridLayoutManager;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.OrientationHelper;
+import android.support.v7.widget.RecyclerView;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.alibaba.fastjson.JSONObject;
+import com.kfzs.duanduan.cardview.CardScaleHelper;
+import com.sheep.gamegroup.helper.ScalableCardHelper;
+import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.DialogConfig;
+import com.sheep.gamegroup.model.entity.FriendAndAwardEntity;
+import com.sheep.gamegroup.model.entity.PictureInvitationEntity;
+import com.sheep.gamegroup.model.entity.UserEntity;
+import com.sheep.gamegroup.model.util.SheepSubscriber;
+import com.sheep.gamegroup.util.CommonUtil;
+import com.sheep.gamegroup.util.DataUtil;
+import com.sheep.gamegroup.util.FastJsonUtils;
+import com.sheep.gamegroup.util.GlideImageLoader;
+import com.sheep.gamegroup.util.ListUtil;
+import com.sheep.gamegroup.util.StringUtils;
+import com.sheep.gamegroup.util.ViewHolder;
+import com.sheep.gamegroup.util.ViewUtil;
+import com.sheep.gamegroup.view.adapter.AdbCommonRecycler;
+import com.sheep.gamegroup.view.adapter.MyAdapter;
+import com.sheep.gamegroup.view.dialog.DialogShare;
+import com.sheep.jiuyan.samllsheep.BuildConfig;
+import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.utils.ClassFileHelper;
+import com.sheep.jiuyan.samllsheep.utils.G;
+import com.umeng.socialize.ShareAction;
+import com.umeng.socialize.bean.SHARE_MEDIA;
+import com.umeng.socialize.media.UMImage;
+import com.umeng.socialize.media.UMWeb;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import rx.android.schedulers.AndroidSchedulers;
+import rx.functions.Action1;
+import rx.schedulers.Schedulers;
+
+import static com.sheep.gamegroup.util.UMConfigUtils.Event.LINK_SHARE;
+import static com.sheep.gamegroup.util.UMConfigUtils.Event.QR_COPY;
+import static com.sheep.gamegroup.util.ViewUtil.getNetImgByName;
+
+/**
+ * created on:2018/9/4 on 15:09
+ * created by: YSL
+ * 描述:
+ */
+public class InvitationActivity extends AppCompatActivity implements ScalableCardHelper.OnPageChangeListener {
+    @BindView(R.id.ask_share_list)
+    RecyclerView ask_share_list;
+    @BindView(R.id.recyclerView)
+    RecyclerView mRecyclerView;
+    @BindView(R.id.blurView)
+    ImageView mBlurView;
+    private List<Integer> mList = new ArrayList<>();
+    private CardScaleHelper mCardScaleHelper = null;
+    private Runnable mBlurRunnable;
+    private int mLastPos = -1;//滑动当前的位置
+    private List<String> localPathList = new ArrayList<>();
+    private List<String> RxPathList = new ArrayList<>();
+    private String localPicturePath = Environment.getDataDirectory().getAbsolutePath() + "/pic/+pic";
+    private String localRxPath = Environment.getDataDirectory().getAbsolutePath() + "/rx/+rx";
+
+    GridLayoutManager gridLayoutManager;
+    UserEntity userEntity = DataUtil.getInstance().getUserEntity();
+    private FriendAndAwardEntity mEntity;
+    private String url;
+    private String description;
+    private Bitmap mBitmap;
+    private List<PictureInvitationEntity> mPictureList = new ArrayList<>();
+    private List<File> mPictureFileList = new ArrayList<>();
+    private List<File> mRxFileList = new ArrayList<>();
+    String localPath = "";
+    String localRx = "";
+    private int position = 0;
+    private List<Bitmap> listBitmap = new ArrayList<>();
+    private List<Bitmap> listBitmap1 = new ArrayList<>();
+    private List<Bitmap> listBitmap2 = new ArrayList<>();
+    private  MyAdapter adapter;
+
+
+    @Override
+
+    protected void onCreate(@Nullable Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_invitation);
+        ButterKnife.bind(this);
+        initData();
+       // initPicture();
+        cerateAdapter(listBitmap,this);
+        getPicetureList();
+    }
+
+    private void initPicture() {
+        for (int i = 0; i < 10; i++) {
+            mList.add(R.drawable.kaipin);
+            mList.add(R.drawable.kaipin);
+            mList.add(R.drawable.kaipin);
+        }
+
+        // final LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
+        //   mRecyclerView.setLayoutManager(linearLayoutManager);
+        //mRecyclerView.setAdapter(new CardAdapter(mList));
+        // mRecyclerView绑定scale效果
+        // mCardScaleHelper = new CardScaleHelper();
+        //  mCardScaleHelper.setCurrentItemPos(1);
+        // mCardScaleHelper.attachToRecyclerView(mRecyclerView);
+
+
+    }
+
+    /**
+     * @param list         Bitmap集合
+     * @param context
+     */
+    private void cerateAdapter( List<Bitmap> list, Context context) {
+         adapter = new MyAdapter(context, list);
+        LinearLayoutManager layoutManager = new LinearLayoutManager(context);
+        layoutManager.setOrientation(OrientationHelper.HORIZONTAL);
+        mRecyclerView.setLayoutManager(layoutManager);
+        // recyclerView.addItemDecoration(new InvitationPictureAdapter.SpacesItemDecoration(15));
+        mRecyclerView.setAdapter(adapter);
+        ScalableCardHelper cardHelper = new ScalableCardHelper(this);
+        cardHelper.attachToRecyclerView(mRecyclerView);
+    }
+
+
+    private void init(final String url, final String description) {
+        gridLayoutManager = new GridLayoutManager(this, 5);
+        ask_share_list.setLayoutManager(gridLayoutManager);
+        final List<String> list = ListUtil.emptyList();
+        list.add(DialogShare.FACE_TO_FACE);
+        list.add(DialogShare.WX);
+        list.add(DialogShare.QQ);
+        list.add(DialogShare.WEIXIN_CIRCLE);
+        list.add(DialogShare.COPY_SHARE_LINK);
+        final List<String> imgList = ListUtil.emptyList();
+        imgList.add("share_face_to_face");
+        imgList.add("share_wx");
+        imgList.add("share_qq");
+        imgList.add("share_weixin_circle");
+        imgList.add("share_copy_share_link");
+        final List<String> nameList = ListUtil.emptyList();
+        nameList.add("面对面");
+        nameList.add("微信");
+        nameList.add("QQ好友");
+        nameList.add("朋友圈");
+        nameList.add("复制链接");
+        AdbCommonRecycler<String> adapter = new AdbCommonRecycler<String>(this, list) {
+            @Override
+            public int getViewIdByType(int type) {
+                return R.layout.ask_to_share_item;
+            }
+
+            @Override
+            public void convert(ViewHolder holder, final String item) {
+                View itemView = holder.itemView;
+                if (item == null)
+                    return;
+                ImageView ask_to_share_item_img = itemView.findViewById(R.id.ask_to_share_item_img);
+                TextView ask_to_share_item_name = itemView.findViewById(R.id.ask_to_share_item_name);
+                final int position = holder.getAdapterPosition();
+                GlideImageLoader.setImage(ask_to_share_item_img, getNetImgByName(imgList.get(position)));
+                ask_to_share_item_name.setText(nameList.get(position));
+                itemView.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View view) {
+                        if (position == 1 || position == 2) {
+                            mBitmap = getBitmap();
+                            mBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.kaipin);
+                            popShare(InvitationActivity.this, url, item, description, mBitmap);
+                        } else {
+                            popShare(InvitationActivity.this, url, item, description, null);
+                        }
+                    }
+                });
+            }
+        };
+        ask_share_list.setAdapter(adapter);
+    }
+
+    private Bitmap getBitmap() {
+        return null;
+    }
+
+    /**
+     * 分享 url type 拼接
+     */
+    public String jointString(String url, @DialogShare.SHARE_TYPE String type) {
+        if (url.contains("&type="))
+            return url;
+        switch (type) {
+            case "qq":
+                return url + "&type=2";
+            case "wx":
+                return url + "&type=1";
+            default:
+                return url + "&type=4";
+        }
+    }
+
+    /**
+     * 分享
+     *
+     * @param activity
+     * @param url
+     * @param type        qq wx all
+     * @param description
+     */
+    public void popShare(Activity activity, final String url, @DialogShare.SHARE_TYPE String type, String description, Bitmap bitmap) {
+        if (activity == null || TextUtils.isEmpty(type) || TextUtils.isEmpty(url)) {
+            return;
+        }
+        final String realUrl = jointString(url, type);
+        SHARE_MEDIA share_media;
+        switch (type) {
+            case DialogShare.ALL:
+                ViewUtil.newInstance().showShare(activity, realUrl, description);
+                return;
+            case DialogShare.FACE_TO_FACE:
+                ViewUtil.showQR(activity, realUrl);
+                return;
+            case DialogShare.COPY_SHARE_LINK:
+                LINK_SHARE.onEvent();
+                ViewUtil.showMsgDialog(activity, new DialogConfig().setTitle("分享链接").setMsg(realUrl)
+                        .setMsgMore("他人通过该链接加入小绵羊即可成为你的好友").setMsgMoreColor(R.color.txt_black_9e9c9c)
+                        .setBtnLeftText("复制链接").setBtnLeftOnClickListener(new View.OnClickListener() {
+                            @Override
+                            public void onClick(View view) {
+                                QR_COPY.onEvent();
+                                StringUtils.CopyText(realUrl);
+                                G.showToast("复制链接成功");
+                            }
+                        }));
+                return;
+            case DialogShare.QQ:
+                share_media = SHARE_MEDIA.QQ;
+                break;
+            case DialogShare.WX:
+                share_media = SHARE_MEDIA.WEIXIN;
+                break;
+            case DialogShare.WEIXIN_CIRCLE:
+            default:
+                share_media = SHARE_MEDIA.WEIXIN_CIRCLE;
+                break;
+        }
+        UMImage umImage = null;
+
+        if (type == DialogShare.QQ || type == DialogShare.WX) {
+            umImage = new UMImage(activity, bitmap);
+        } else {
+            umImage = new UMImage(activity, R.mipmap.icon);
+        }
+        UMWeb umWeb = new UMWeb(realUrl);
+        umWeb.setTitle(activity.getResources().getString(R.string.app_name));
+        umWeb.setThumb(umImage);
+        umWeb.setDescription(TextUtils.isEmpty(description) ? activity.getResources().getString(R.string.app_name) : description);
+        if (type == DialogShare.QQ || type == DialogShare.WX) {
+            new ShareAction(activity)
+                    .setPlatform(share_media)
+                    .withMedia(umImage)
+                    .setCallback(new CommonUtil.UMShareListener())
+                    .share();
+        } else {
+            new ShareAction(activity)
+                    .setPlatform(share_media)
+                    .withMedia(umWeb)
+                    .setCallback(new CommonUtil.UMShareListener())
+                    .share();
+        }
+    }
+
+    public void initData() {
+        ViewUtil.newInstance().showProgress(this);
+        SheepApp.getInstance().getNetComponent().getApiService().FriendCountAndAward()
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+                        ViewUtil.newInstance().hideProgress(InvitationActivity.this);
+                        if (BuildConfig.DEBUG)
+                            G.showToast(baseMessage);
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        if (baseMessage != null) {
+                            mEntity = FastJsonUtils.toBean(JSONObject.toJSONString(baseMessage.getData()), FriendAndAwardEntity.class);
+                            description = mEntity.getShare_desc();
+                            ViewUtil.newInstance().hideProgress(InvitationActivity.this);
+                            getmEntity();
+                            runOnUiThread(new Runnable() {
+                                @Override
+                                public void run() {
+                                   /* tvSize.setText(mEntity.getFriend_count() + "");
+                                    tvMoney.setText(mEntity.getAward());*/
+                                }
+                            });
+                        } else {
+                            /* ViewUtil.newInstance().hideProgress(activity);*/
+                        }
+
+                    }
+                });
+
+
+    }
+
+    private void getmEntity() {
+        CommonUtil.getInstance().updateUserInfo(new Action1<UserEntity>() {
+            @Override
+            public void call(UserEntity result) {
+                if (result != null) {
+                    userEntity = result;
+                    String audit_total_audit = String.format(getResources().getString(R.string.my_invitation_str), userEntity.getInvitation_code());
+                    /*  my_invitation_tv.setText(audit_total_audit);*/
+                    url = userEntity.getShareLink();
+                    init(url, description);
+                }
+            }
+        });
+    }
+
+
+    @Override
+    public void onPageSelected(int position) {
+        Log.i("aaaa", "当前位置" + position);
+    }
+
+    /**
+     * 来获取邀请图片,
+     *
+     */
+    private void getPicetureList() {
+        ArrayList<PictureInvitationEntity> list = new ArrayList<>();
+        SheepApp
+                .getInstance()
+                .getNetComponent()
+                .getApiService()
+                .getSharePicture()
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        mPictureList.addAll(baseMessage.getDataList(PictureInvitationEntity.class));
+                        downloadPictures();
+                    }
+
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+
+                    }
+                });
+    }
+
+    private void downloadPictures() {
+        for (int i = 0; i < mPictureList.size(); i++) {
+            position = i;
+            GlideImageLoader.downLoadImage("pic" + i, mPictureList.get(i).getPicture(), new Action1<File>() {
+                @Override
+                public void call(File file) {
+                    if (file == null) {
+                        listBitmap1.add(BitmapFactory.decodeFile(ClassFileHelper.DIR + "pic" + position + ".png"));
+                    }
+                }
+            });
+            GlideImageLoader.downLoadImage("rx" + i, mPictureList.get(i).getLink(), new Action1<File>() {
+                @Override
+                public void call(File file) {
+                    if (file == null) {
+                        listBitmap2.add(BitmapFactory.decodeFile(ClassFileHelper.DIR + "rx" + position + ".png"));
+
+                    }
+                }
+            });
+        }
+        handler.sendEmptyMessage(1);
+    }
+
+    @SuppressLint("HandlerLeak")
+    private Handler handler = new Handler() {
+        @Override
+        public void handleMessage(Message msg) {
+            super.handleMessage(msg);
+            if (msg.what == 1) {
+                for (int i = 0; i < mPictureFileList.size(); i++) {
+                    if (!listBitmap1.isEmpty() && !listBitmap2.isEmpty()) {
+                        listBitmap.add(mergeBitmap(listBitmap1.get(i), listBitmap2.get(i)));
+                    }
+                }
+                adapter.notifyDataSetChanged();
+            }
+        }
+    };
+
+    private Bitmap mergeBitmap(Bitmap firstBitmap, Bitmap secondBitmap) {
+        Bitmap bitmap = Bitmap.createBitmap(firstBitmap.getWidth(), firstBitmap.getHeight(), firstBitmap.getConfig());
+        Canvas canvas = new Canvas(bitmap);
+        canvas.drawBitmap(firstBitmap, new Matrix(), null);
+        canvas.drawBitmap(secondBitmap, 30, 30, null);
+        return bitmap;
+    }
+}

+ 13 - 9
app/src/main/java/com/sheep/gamegroup/view/activity/MessageReplyDetailActivity.java

@@ -6,10 +6,14 @@ import android.support.v7.app.AppCompatActivity;
 import android.view.View;
 import android.widget.TextView;
 
+import com.google.gson.Gson;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.MessageCenterEntity;
 import com.sheep.gamegroup.model.entity.MessageReplyEntity;
+import com.sheep.gamegroup.model.entity.MessageUnReadEntity;
+import com.sheep.gamegroup.model.entity.MessageUserFeedbackEntity;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
+import com.sheep.gamegroup.util.LogUtil;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 
@@ -35,17 +39,17 @@ public class MessageReplyDetailActivity extends AppCompatActivity {
     @BindView(R.id.txt_baseactivity_title)
     TextView tvBaseTitle;
 
-    private int position;
-    private List<MessageReplyEntity> mList = new ArrayList<>();
-    private MessageReplyEntity entity=null;
+    private MessageUserFeedbackEntity userFeedbackEntity;
+    private MessageReplyEntity entity = null;
+    private String id = "";
 
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_messagesystem);
         ButterKnife.bind(this);
-        position = getIntent().getIntExtra("position", -1);
-        loadData(position + "");
+        id = getIntent().getIntExtra("position", -1) + "";
+        loadData(id + "");
     }
 
     @OnClick({R.id.img_baseactivity_title})
@@ -71,14 +75,14 @@ public class MessageReplyDetailActivity extends AppCompatActivity {
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        mList.addAll(baseMessage.getDataList(MessageReplyEntity.class));
-                        tvContent.setText(entity.getContent());
-                        tvTitle.setText(entity.getTitle());
+                        LogUtil.logI("loadData-onNext----" + new Gson().toJson(baseMessage));
+                        userFeedbackEntity = baseMessage.getData(MessageUserFeedbackEntity.class);
+                        tvTitle.setText(userFeedbackEntity.getTitle());
                     }
 
                     @Override
                     public void onError(BaseMessage baseMessage) {
-
+                        LogUtil.logI("loadData-onError----" + new Gson().toJson(baseMessage));
                     }
                 });
     }

+ 42 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/MessagesActivity.java

@@ -3,6 +3,7 @@ package com.sheep.gamegroup.view.activity;
 import android.annotation.SuppressLint;
 import android.graphics.Color;
 import android.os.Bundle;
+import android.os.Handler;
 import android.support.design.widget.TabLayout;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.AppCompatActivity;
@@ -11,8 +12,23 @@ import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.MessageCenterEntity;
+import com.sheep.gamegroup.model.entity.MessageReplyEntity;
+import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.view.adapter.MessageAdapter;
 import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
+
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+import org.xutils.view.annotation.Event;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import rx.android.schedulers.AndroidSchedulers;
+import rx.schedulers.Schedulers;
 
 
 /**
@@ -24,7 +40,11 @@ public class MessagesActivity extends AppCompatActivity {
     private String[] mTitle = new String[]{"消息中心", "回复互动"};
     private TabLayout tabLayout = null;
     private ViewPager viewPager = null;
+    private ImageView imageViewLeft;
+    private ImageView imageViewRight;
 
+    private List<MessageCenterEntity> mListleft = new ArrayList<>();
+    private List<MessageReplyEntity> mListRight = new ArrayList<>();
 
     @SuppressLint("WrongViewCast")
     @Override
@@ -33,6 +53,12 @@ public class MessagesActivity extends AppCompatActivity {
         setContentView(R.layout.activity_messages);
         viewPager = findViewById(R.id.message_view_pager_grd);
         tabLayout = findViewById(R.id.tab_layout);
+        findViewById(R.id.iv_back).setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                MessagesActivity.this.finish();
+            }
+        });
         tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
             @Override
             public void onTabSelected(TabLayout.Tab tab) {
@@ -42,8 +68,9 @@ public class MessagesActivity extends AppCompatActivity {
                         tabView = getCustomView(i);
                         tabLayout.getTabAt(i).setCustomView(tabView);
                     }
+                    imageViewLeft = getCustomView(0).findViewById(R.id.iv_message);
+                    imageViewRight = getCustomView(1).findViewById(R.id.iv_message);
                     TextView tvtable = tabView.findViewById(R.id.tv_message);
-                    ImageView ivtable = tabView.findViewById(R.id.iv_message);
                     if (i == tab.getPosition()) {
                         tvtable.setTextColor(Color.parseColor("#ff333333"));
                     } else {
@@ -74,6 +101,20 @@ public class MessagesActivity extends AppCompatActivity {
         });
     }
 
+    @Subscribe(threadMode = ThreadMode.MAIN)
+    public void changeView(String flag) {
+        if (flag.equals("left_unread")) {
+            imageViewLeft.setVisibility(View.VISIBLE);
+        } else if (flag.equals("left_read")) {
+            imageViewLeft.setVisibility(View.GONE);
+        } else if (flag.equals("right_unread")) {
+            imageViewRight.setVisibility(View.VISIBLE);
+        } else if (flag.equals("right_read")) {
+            imageViewRight.setVisibility(View.GONE);
+        }
+    }
+
+
     /**
      * 、
      * 设置每个tab的view,可根据position的不同,针对性的对每个tab做处理,这里消息互动和消息中心的tab布局一样,所以就统一设置

+ 119 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/InvitationPictureAdapter.java

@@ -0,0 +1,119 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Matrix;
+import android.graphics.Rect;
+import android.graphics.drawable.BitmapDrawable;
+import android.support.annotation.NonNull;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.sheep.gamegroup.model.entity.PictureInvitationEntity;
+import com.sheep.jiuyan.samllsheep.R;
+
+import java.util.List;
+
+/**
+ * created on:2018/9/4 on 10:57
+ * created by: YSL
+ * 描述:
+ */
+public class InvitationPictureAdapter extends RecyclerView.Adapter<InvitationPictureAdapter.MyHolder> {
+    private Context mContet;
+    private List<PictureInvitationEntity> mList;
+    private ItemOnClickListener itemOnClickListener;
+    private int position;
+
+    public InvitationPictureAdapter(Context mContet, List<PictureInvitationEntity> mList) {
+        this.mContet = mContet;
+        this.mList = mList;
+
+    }
+
+    @NonNull
+    @Override
+    public MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
+        View view = LayoutInflater.from(mContet).inflate(R.layout.adapter_invitationpictureadapter, null);
+        return new MyHolder(view);
+    }
+
+    @Override
+    public void onBindViewHolder(@NonNull MyHolder viewHolder, int i) {
+        position = i;
+        viewHolder.tvPosition.setText("邀请" + (i + 1));
+        // GlideImageLoader.centerImage(viewHolder.ivPicture, mList.get(i).getPicture());
+        viewHolder.ivPicture.setImageResource(R.drawable.kaipin);
+        viewHolder.ivPicture.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                itemOnClickListener.itemClick(position);
+            }
+        });
+    }
+
+    @Override
+    public int getItemCount() {
+        return 5;
+    }
+
+
+    private Bitmap mergeBitmap(ImageView imageFirst, ImageView imageSecound) {
+        Bitmap firstBitmap = ((BitmapDrawable) imageFirst.getDrawable()).getBitmap();
+        Bitmap secondBitmap = ((BitmapDrawable) imageFirst.getDrawable()).getBitmap();
+        Bitmap bitmap = Bitmap.createBitmap(firstBitmap.getWidth(), firstBitmap.getHeight(), firstBitmap.getConfig());
+        Canvas canvas = new Canvas(bitmap);
+        canvas.drawBitmap(firstBitmap, new Matrix(), null);
+        canvas.drawBitmap(secondBitmap, 0, 0, null);
+        return bitmap;
+    }
+
+
+    class MyHolder extends RecyclerView.ViewHolder {
+        private ImageView ivPicture;
+        private TextView tvPosition;
+
+        public MyHolder(View itemView) {
+            super(itemView);
+            ivPicture = itemView.findViewById(R.id.iv_picture);
+            tvPosition = itemView.findViewById(R.id.tv_position);
+        }
+    }
+
+    /**
+     * 设置recycleview item间距辅助类
+     */
+    public static class SpacesItemDecoration extends RecyclerView.ItemDecoration {
+        /**
+         * 设置间距
+         */
+        private int space;
+
+        public SpacesItemDecoration(int space) {
+            this.space = space;
+        }
+
+        @Override
+        public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
+            outRect.left = space;
+            outRect.right = space;
+            //outRect.bottom = space;
+            /*if (parent.getChildPosition(view) == 0)
+                outRect.top = space;*/
+        }
+    }
+
+    /**
+     * 图片点击事件回调
+     */
+    public interface ItemOnClickListener {
+        void itemClick(int position);
+    }
+
+
+}

+ 8 - 10
app/src/main/java/com/sheep/gamegroup/view/adapter/MessageInteractionAdapter.java

@@ -10,7 +10,9 @@ import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
+import com.sheep.gamegroup.model.entity.MessageReplyEntity;
 import com.sheep.gamegroup.util.GlideImageLoader;
+import com.sheep.gamegroup.util.TimeUtil;
 import com.sheep.jiuyan.samllsheep.R;
 
 import java.util.List;
@@ -22,9 +24,9 @@ import java.util.List;
  */
 public class MessageInteractionAdapter extends RecyclerView.Adapter<MessageInteractionAdapter.MyHolder> {
     private Context mContext;
-    private List<?> mList;
+    private List<MessageReplyEntity> mList;
 
-    public MessageInteractionAdapter(Context mContext, List<?> mList) {
+    public MessageInteractionAdapter(Context mContext, List<MessageReplyEntity> mList) {
         this.mContext = mContext;
         this.mList = mList;
     }
@@ -33,20 +35,16 @@ public class MessageInteractionAdapter extends RecyclerView.Adapter<MessageInter
     @Override
     public MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
         View view = null;
-        if (mList == null || mList.isEmpty()) {
-            view = LayoutInflater.from(mContext).inflate(R.layout.empty_view, null);
-        } else {
-            view = LayoutInflater.from(mContext).inflate(R.layout.adapter_message_interaction, null);
-        }
+        view = LayoutInflater.from(mContext).inflate(R.layout.adapter_message_interaction, null);
         return new MyHolder(view);
     }
 
     @Override
     public void onBindViewHolder(@NonNull MyHolder viewHolder, int i) {
             GlideImageLoader.centerImage(viewHolder.ivIcon, "");
-            viewHolder.tvPeople.setText("");
-            viewHolder.tvTime.setText("");
-            viewHolder.tvContent.setText("");
+            viewHolder.tvPeople.setText(mList.get(i).getType()==1?"官方回复":"我");
+            viewHolder.tvTime.setText(""+ TimeUtil.TimeStamp2Date(mList.get(i).getCreated_at(), "yyyy-MM-dd HH:mm"));
+            viewHolder.tvContent.setText(mList.get(i).getContent());
 
     }
 

+ 5 - 1
app/src/main/java/com/sheep/gamegroup/view/adapter/MessageLeftAdapter.java

@@ -55,10 +55,14 @@ public class MessageLeftAdapter extends RecyclerView.Adapter<MessageLeftAdapter.
             viewHolder.viewLine.setVisibility(View.GONE);//最后一条数据隐藏线条
         }
         //  GlideImageLoader.centerImage(viewHolder.ivIcon, "");
-        viewHolder.ivIcon.setImageResource(R.mipmap.message_unread);
         viewHolder.tvTitle.setText(mList.get(i).getTitle() + "");
         viewHolder.tvTime.setText(mList.get(i).getCreated_at() + "");
         viewHolder.tvContent.setText(mList.get(i).getContent() + "");
+        if (mList.get(i).getIs_look()==1){
+            viewHolder.ivIcon.setImageResource(R.mipmap.icon_unread);//已读
+        }else {
+            viewHolder.ivIcon.setImageResource(R.mipmap.message_unread);//未读
+        }
         position = i;
         viewHolder.itemLayout.setOnClickListener(new View.OnClickListener() {
             @Override

+ 5 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/MessageRightAdapter.java

@@ -55,6 +55,11 @@ public class MessageRightAdapter extends RecyclerView.Adapter<MessageRightAdapte
         viewHolder.tvTitle.setText(mList.get(i).getTitle()+"");
         viewHolder.tvTime.setText(mList.get(i).getCreated_at()+"");
         viewHolder.tvContent.setText(mList.get(i).getContent());
+        if (mList.get(i).getIs_look()==1){
+            viewHolder.ivIcon.setImageResource(R.mipmap.icon_unread);//已读
+        }else {
+            viewHolder.ivIcon.setImageResource(R.mipmap.message_unread);//未读
+        }
         position = i;
         viewHolder.itemLayout.setOnClickListener(new View.OnClickListener() {
             @Override

+ 63 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/MyAdapter.java

@@ -0,0 +1,63 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.support.annotation.NonNull;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+
+import com.sheep.jiuyan.samllsheep.R;
+
+import java.util.List;
+
+/**
+ * created on:2018/9/5 on 9:18
+ * created by: YSL
+ * 描述:
+ */
+public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyHolder> {
+    private Context mContext;
+    private List<Bitmap> mList;
+
+    public MyAdapter(Context mContext, List<Bitmap> mList) {
+        this.mContext = mContext;
+        this.mList = mList;
+    }
+
+    @NonNull
+    @Override
+    public MyHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+        View view = LayoutInflater.from(mContext).inflate(R.layout.view_image, parent, false);
+        return new MyHolder(view);
+    }
+
+    @Override
+    public void onBindViewHolder(@NonNull MyHolder holder, int position) {
+        //   holder.imageView.setImageResource(ress[position]);
+
+        // holder.imageView.setImageBitmap(mergeBitmap(bitmap1, bitmap2));
+
+        holder.imageView.setImageBitmap(mList.get(position));
+
+    }
+
+    @Override
+    public int getItemCount() {
+        return mList == null ? 0 : mList.size();
+    }
+
+
+    class MyHolder extends RecyclerView.ViewHolder {
+
+        ImageView imageView;
+
+        public MyHolder(View itemView) {
+            super(itemView);
+            imageView = itemView.findViewById(R.id.image);
+        }
+    }
+}
+

+ 7 - 0
app/src/main/java/com/sheep/gamegroup/view/fragment/MessageCenterFragment.java

@@ -35,6 +35,8 @@ import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -124,9 +126,11 @@ public class MessageCenterFragment extends Fragment implements MessageLeftAdapte
                     public void onNext(BaseMessage baseMessage) {
                         mList.addAll(baseMessage.getDataList(MessageCenterEntity.class));
                         if (mList.isEmpty()) {
+                            EventBus.getDefault().post("right_read");
                             emptyView.setVisibility(View.VISIBLE);
                             recyclerView.setVisibility(View.GONE);
                         } else {
+                            EventBus.getDefault().post("right_unread");
                             emptyView.setVisibility(View.GONE);
                             recyclerView.setVisibility(View.VISIBLE);
                         }
@@ -157,9 +161,11 @@ public class MessageCenterFragment extends Fragment implements MessageLeftAdapte
                     public void onNext(BaseMessage baseMessage) {
                         if (!mList.isEmpty()) {
                             mList.clear();
+                            EventBus.getDefault().post("right_unread");
                         }
                         mList.addAll(baseMessage.getDataList(MessageCenterEntity.class));
                         if (mList.isEmpty()) {
+                            EventBus.getDefault().post("right_read");
                             emptyView.setVisibility(View.VISIBLE);
                             recyclerView.setVisibility(View.GONE);
                         } else {
@@ -191,6 +197,7 @@ public class MessageCenterFragment extends Fragment implements MessageLeftAdapte
 
     @Override
     public void itemClick(int position) {
+        refreshData(1,20);
         if (getActivity() != null) {
             Intent intent = new Intent(getActivity(), MessageCenterDetailActivity.class);
             intent.putExtra("position", position);

+ 7 - 0
app/src/main/java/com/sheep/gamegroup/view/fragment/MessageReplyFragment.java

@@ -28,6 +28,8 @@ import com.sheep.gamegroup.view.adapter.MessageRightAdapter;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -111,10 +113,12 @@ public class MessageReplyFragment extends Fragment implements MessageRightAdapte
                     public void onNext(BaseMessage baseMessage) {
                         LogUtil.logI("返回格式---" + new Gson().toJson(baseMessage));
                         if (!mList.isEmpty()){
+                            EventBus.getDefault().post("left_unread");
                             mList.clear();
                             mList.addAll(baseMessage.getDataList(MessageReplyEntity.class));
                         }
                         if (mList.isEmpty()) {
+                            EventBus.getDefault().post("left_read");
                             emptyView.setVisibility(View.VISIBLE);
                             recyclerView.setVisibility(View.GONE);
                         } else {
@@ -162,7 +166,9 @@ public class MessageReplyFragment extends Fragment implements MessageRightAdapte
                         if (mList.isEmpty()) {
                             emptyView.setVisibility(View.VISIBLE);
                             recyclerView.setVisibility(View.GONE);
+                            EventBus.getDefault().post("left_read");
                         } else {
+                            EventBus.getDefault().post("left_unread");
                             emptyView.setVisibility(View.GONE);
                             recyclerView.setVisibility(View.VISIBLE);
                         }
@@ -180,6 +186,7 @@ public class MessageReplyFragment extends Fragment implements MessageRightAdapte
 
     @Override
     public void itemClick(MessageReplyEntity entity,int position) {
+        refreshData(1,20);
         if (getActivity() != null) {
             Intent intent=new Intent(getActivity(), MessageInteractionDetailActivity.class);
             intent.putExtra("message",entity);

+ 123 - 0
app/src/main/res/layout/activity_invitation.xml

@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+   >
+
+    <RelativeLayout
+        android:id="@+id/layout_f"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignParentBottom="true"
+        android:background="#ffffffff">
+
+        <TextView
+            android:id="@+id/ask_share_title"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:padding="10dp"
+            android:text="邀请好友"
+            android:textColor="#ff333333"
+            android:textSize="14sp" />
+
+        <TextView
+            android:id="@+id/tv_copy"
+            android:layout_width="40dp"
+            android:layout_height="20dp"
+            android:layout_alignParentEnd="true"
+            android:layout_marginEnd="15dp"
+            android:layout_marginTop="20dp"
+            android:background="@drawable/shape_blue_stroke_withe_radius_5"
+            android:gravity="center"
+            android:text="复制"
+            android:visibility="invisible"
+            android:textColor="@color/white" />
+
+        <TextView
+            android:id="@+id/tv_invitation_code"
+            android:layout_width="wrap_content"
+            android:layout_height="30dp"
+            android:layout_marginRight="5dp"
+            android:layout_marginTop="15dp"
+            android:layout_toLeftOf="@id/tv_copy"
+            android:gravity="center"
+            android:text="12332"
+            android:visibility="invisible"
+            android:textColor="#ff333333" />
+
+        <TextView
+            android:id="@+id/tv_f_invatation"
+            android:layout_width="wrap_content"
+            android:layout_height="30dp"
+            android:layout_marginRight="5dp"
+            android:layout_marginTop="15dp"
+            android:layout_toLeftOf="@id/tv_invitation_code"
+            android:gravity="center"
+            android:text="你的邀请码:"
+            android:visibility="invisible"
+            android:textColor="#ff333333" />
+
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/ask_share_list"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_below="@+id/ask_share_title"
+            android:layout_marginStart="@dimen/content_padding_15"
+            android:layout_marginTop="20dp"
+            android:layout_marginBottom="35dp"/>
+    </RelativeLayout>
+
+    <include
+        android:id="@+id/title_layout"
+        layout="@layout/title"
+        android:layout_width="match_parent"
+        android:layout_height="60dp"
+        android:layout_alignParentTop="true" />
+
+    <RelativeLayout
+        android:id="@+id/layout_f1"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_above="@id/layout_f"
+        android:layout_below="@id/title_layout"
+        android:background="#F0F0F0">
+
+
+        <TextView
+            android:id="@+id/tv_flags"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginBottom="10dp"
+            android:layout_alignParentBottom="true"
+            android:layout_centerHorizontal="true"
+            android:text="左右滑动选择推广页" />
+
+        <RelativeLayout
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:layout_above="@id/tv_flags">
+            <ImageView
+                android:id="@+id/blurView"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:scaleType="centerCrop"
+                android:visibility="gone"/>
+
+            <com.kfzs.duanduan.cardview.SpeedRecyclerView
+                android:id="@+id/recyclerViews"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginBottom="30dp"
+                android:layout_marginTop="30dp"
+                android:visibility="gone"/>
+
+            <android.support.v7.widget.RecyclerView
+                android:id="@+id/recyclerView"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent" />
+        </RelativeLayout>
+    </RelativeLayout>
+
+
+</RelativeLayout>

+ 2 - 2
app/src/main/res/layout/activity_messages.xml

@@ -39,8 +39,8 @@
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:layout_toLeftOf="@id/iv_right"
-            android:layout_marginStart="60dp"
-            android:layout_marginEnd="60dp"
+            android:layout_marginStart="30dp"
+            android:layout_marginEnd="30dp"
             android:layout_toRightOf="@+id/iv_back"
             app:tabIndicatorHeight="0dp" />
 

+ 1 - 1
app/src/main/res/layout/activity_messagesystem.xml

@@ -18,7 +18,7 @@
 
     <TextView
         android:id="@+id/tv_content"
-        android:layout_width="328dp"
+        android:layout_width="match_parent"
         android:layout_height="48dp"
         android:layout_marginEnd="16dp"
         android:layout_marginStart="16dp"

+ 21 - 0
app/src/main/res/layout/adapter_invitationpictureadapter.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+    <ImageView
+        android:id="@+id/iv_picture"
+        android:layout_width="200dp"
+        android:layout_height="350dp"
+        android:layout_gravity="center_horizontal"
+        android:layout_marginTop="10dp"/>
+
+    <TextView
+        android:id="@+id/tv_position"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_horizontal"
+        android:layout_marginTop="10dp"
+        android:text="1232312" />
+</LinearLayout>

+ 1 - 2
app/src/main/res/layout/adapter_message_left_fragment.xml

@@ -16,8 +16,7 @@
             android:layout_height="40dp"
             android:layout_marginBottom="15dp"
             android:layout_marginStart="17dp"
-            android:layout_marginTop="15dp"
-            android:src="@mipmap/add_black_img" />
+            android:layout_marginTop="15dp" />
 
         <RelativeLayout
             android:layout_width="match_parent"

+ 13 - 15
app/src/main/res/layout/ask_to_share.xml

@@ -14,7 +14,7 @@
             android:id="@+id/ask_share_title"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:padding="@dimen/content_padding_15"
+            android:padding="10dp"
             android:text="邀请好友"
             android:textColor="#ff333333"
             android:textSize="14sp" />
@@ -29,7 +29,6 @@
             android:background="@drawable/shape_blue_stroke_withe_radius_5"
             android:gravity="center"
             android:text="复制"
-            android:visibility="gone"
             android:textColor="@color/white" />
 
         <TextView
@@ -41,7 +40,6 @@
             android:layout_toLeftOf="@id/tv_copy"
             android:gravity="center"
             android:text="12332"
-            android:visibility="gone"
             android:textColor="#ff333333" />
 
         <TextView
@@ -53,7 +51,6 @@
             android:layout_toLeftOf="@id/tv_invitation_code"
             android:gravity="center"
             android:text="你的邀请码:"
-            android:visibility="gone"
             android:textColor="#ff333333" />
 
 
@@ -72,20 +69,21 @@
        android:layout_height="450dp"
        android:id="@+id/layout_f1"
        android:layout_above="@id/layout_f"
-       android:visibility="gone">
-       <ImageView
-           android:id="@+id/blurView"
-           android:layout_width="match_parent"
-           android:layout_height="match_parent"
-           android:background="#3f000000"
-           android:scaleType="centerCrop"/>
+       android:background="@color/white">
+
 
-       <com.kfzs.duanduan.cardview.SpeedRecyclerView
-           android:id="@+id/recyclerView"
+       <TextView
+           android:id="@+id/tv_flags"
+           android:layout_width="wrap_content"
+           android:layout_height="wrap_content"
+           android:text="左右滑动选择推广页"
+           android:layout_alignParentBottom="true"
+           android:layout_centerHorizontal="true"/>
+       <android.support.v7.widget.RecyclerView
+           android:id="@+id/recycle_picture"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
-           android:layout_marginBottom="30dp"
-           android:layout_marginTop="30dp"/>
+           android:layout_above="@id/tv_flags"/>
    </RelativeLayout>
 
     <View

+ 2 - 1
app/src/main/res/layout/layout_fragment_mseeages.xml

@@ -25,7 +25,8 @@
            android:layout_marginTop="20dp"
             android:layout_marginStart="-5dp"
             android:layout_toRightOf="@id/tv_message"
-            android:src="@drawable/shape_litter_red_circle" />
+            android:src="@drawable/shape_litter_red_circle"
+            android:visibility="gone"/>
     </RelativeLayout>
 
 

+ 13 - 0
app/src/main/res/layout/view_image.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="240dp"
+    android:layout_height="match_parent">
+
+    <ImageView
+        android:id="@+id/image"
+        android:layout_width="240dp"
+        android:scaleType="centerCrop"
+        android:layout_centerInParent="true"
+        android:layout_height="match_parent" />
+</RelativeLayout>

BIN
app/src/main/res/mipmap-xxhdpi/icon_unread.png