Commit 2432748143121728260b2fa9dcb83f7be119324d
1 parent
f4d3a0b7
1 优化二维码占用与联系人邀请角色冲突问题
Showing
10 changed files
with
255 additions
and
457 deletions
app/src/main/java/com/cnlive/strike/xiaojiaspeaker/ButtonAnimUtil.java deleted
100644 → 0
| 1 | -package com.cnlive.strike.xiaojiaspeaker; | ||
| 2 | - | ||
| 3 | -import android.animation.Animator; | ||
| 4 | -import android.animation.AnimatorSet; | ||
| 5 | -import android.animation.ObjectAnimator; | ||
| 6 | -import android.os.Build; | ||
| 7 | -import android.os.Handler; | ||
| 8 | -import android.view.View; | ||
| 9 | -import android.view.ViewAnimationUtils; | ||
| 10 | -import android.view.animation.DecelerateInterpolator; | ||
| 11 | - | ||
| 12 | -/** | ||
| 13 | - * 圆形按钮点击特效 | ||
| 14 | - * | ||
| 15 | - * @author ShinnyYang | ||
| 16 | - */ | ||
| 17 | -public class ButtonAnimUtil { | ||
| 18 | - public static final int DEFAULT_ZOOM_DURATION = 50;//默认缩放动画时间间隔 | ||
| 19 | - public static final int SHOW_VIEW_ZOOM_DURATION = 150;//显示控件缩放动画时间间隔 | ||
| 20 | - public static final int HIDE_VIEW_ZOOM_DURATION = 100;//隐藏控件缩放动画时间间隔 | ||
| 21 | - | ||
| 22 | - //设置控件放大动画 | ||
| 23 | - public static void setViewZoomIn(View view) { | ||
| 24 | - try { | ||
| 25 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 26 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1, 1.2f); | ||
| 27 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1, 1.2f); | ||
| 28 | - animatorSetsuofang.setDuration(DEFAULT_ZOOM_DURATION); | ||
| 29 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 30 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 31 | - animatorSetsuofang.start(); | ||
| 32 | - } catch (Exception e) { | ||
| 33 | - } | ||
| 34 | - } | ||
| 35 | - | ||
| 36 | - //设置控件缩小动画 | ||
| 37 | - public static void setViewZoomOut(View view) { | ||
| 38 | - try { | ||
| 39 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 40 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1.2f, 1); | ||
| 41 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1.2f, 1); | ||
| 42 | - animatorSetsuofang.setDuration(DEFAULT_ZOOM_DURATION); | ||
| 43 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 44 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 45 | - animatorSetsuofang.start(); | ||
| 46 | - } catch (Exception e) { | ||
| 47 | - } | ||
| 48 | - } | ||
| 49 | - | ||
| 50 | - //设置控件缩小动画 | ||
| 51 | - public static void setViewDefault(View view) { | ||
| 52 | - try { | ||
| 53 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 54 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1f, 1); | ||
| 55 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1f, 1); | ||
| 56 | - animatorSetsuofang.setDuration(DEFAULT_ZOOM_DURATION); | ||
| 57 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 58 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 59 | - animatorSetsuofang.start(); | ||
| 60 | - } catch (Exception e) { | ||
| 61 | - } | ||
| 62 | - } | ||
| 63 | - | ||
| 64 | - //设置控件显示放大动画 | ||
| 65 | - public static void setViewShowZoomIn(View view) { | ||
| 66 | - try { | ||
| 67 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 68 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 0, 1.2f); | ||
| 69 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 0, 1.2f); | ||
| 70 | - animatorSetsuofang.setDuration(SHOW_VIEW_ZOOM_DURATION); | ||
| 71 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 72 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 73 | - animatorSetsuofang.start(); | ||
| 74 | - new Handler().postDelayed(new Runnable() { | ||
| 75 | - @Override | ||
| 76 | - public void run() { | ||
| 77 | - if (view == null) { | ||
| 78 | - return; | ||
| 79 | - } | ||
| 80 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 81 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1.2f, 1); | ||
| 82 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1.2f, 1); | ||
| 83 | - animatorSetsuofang.setDuration(SHOW_VIEW_ZOOM_DURATION); | ||
| 84 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 85 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 86 | - animatorSetsuofang.start(); | ||
| 87 | - } | ||
| 88 | - }, SHOW_VIEW_ZOOM_DURATION); | ||
| 89 | - } catch (Exception e) { | ||
| 90 | - } | ||
| 91 | - } | ||
| 92 | - | ||
| 93 | - //设置控件隐藏缩小动画 | ||
| 94 | - public static void setViewHideZoomOut(View view) { | ||
| 95 | - try { | ||
| 96 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 97 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1, 0); | ||
| 98 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1, 0); | ||
| 99 | - animatorSetsuofang.setDuration(HIDE_VIEW_ZOOM_DURATION); | ||
| 100 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 101 | - animatorSetsuofang.play(scaleX).with(scaleY);//两个动画同时开始 | ||
| 102 | - animatorSetsuofang.start(); | ||
| 103 | - } catch (Exception e) { | ||
| 104 | - } | ||
| 105 | - } | ||
| 106 | - | ||
| 107 | - //设置时间显示放大动画 | ||
| 108 | - public static void setTimeShowZoomIn(View view) { | ||
| 109 | - try { | ||
| 110 | - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 0, 1.4f); | ||
| 111 | - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 0, 1.4f); | ||
| 112 | - ObjectAnimator scaleX1 = ObjectAnimator.ofFloat(view, "scaleX", 1.4f, 1); | ||
| 113 | - ObjectAnimator scaleY1 = ObjectAnimator.ofFloat(view, "scaleY", 1.4f, 1); | ||
| 114 | - ObjectAnimator scaleX2 = ObjectAnimator.ofFloat(view, "scaleX", 1, 0); | ||
| 115 | - ObjectAnimator scaleY2 = ObjectAnimator.ofFloat(view, "scaleY", 1, 0); | ||
| 116 | - AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 117 | - animatorSetsuofang.setDuration(100); | ||
| 118 | - animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 119 | - animatorSetsuofang.play(scaleX).with(scaleY); | ||
| 120 | - animatorSetsuofang.start(); | ||
| 121 | - new Handler().postDelayed(new Runnable() { | ||
| 122 | - @Override | ||
| 123 | - public void run() { | ||
| 124 | - if (view == null) { | ||
| 125 | - return; | ||
| 126 | - } | ||
| 127 | - AnimatorSet animatorSetsuofang2 = new AnimatorSet();//组合动画 | ||
| 128 | - animatorSetsuofang2.setDuration(100); | ||
| 129 | - animatorSetsuofang2.setInterpolator(new DecelerateInterpolator()); | ||
| 130 | - animatorSetsuofang2.play(scaleX1).with(scaleY1); | ||
| 131 | - animatorSetsuofang2.start(); | ||
| 132 | - } | ||
| 133 | - }, 100); | ||
| 134 | - | ||
| 135 | - new Handler().postDelayed(new Runnable() { | ||
| 136 | - @Override | ||
| 137 | - public void run() { | ||
| 138 | - if (view == null) { | ||
| 139 | - return; | ||
| 140 | - } | ||
| 141 | - AnimatorSet animatorSetsuofang3 = new AnimatorSet();//组合动画 | ||
| 142 | - animatorSetsuofang3.setDuration(10); | ||
| 143 | - animatorSetsuofang3.setInterpolator(new DecelerateInterpolator()); | ||
| 144 | - animatorSetsuofang3.play(scaleX2).with(scaleY2); | ||
| 145 | - animatorSetsuofang3.start(); | ||
| 146 | - } | ||
| 147 | - }, 300); | ||
| 148 | - } catch (Exception e) { | ||
| 149 | - } | ||
| 150 | - } | ||
| 151 | - | ||
| 152 | - | ||
| 153 | - /** | ||
| 154 | - * 设置控件展开特效 | ||
| 155 | - * | ||
| 156 | - * @param view | ||
| 157 | - * @param closeFlag | ||
| 158 | - */ | ||
| 159 | - public static void startAnimation(View view, boolean closeFlag) { | ||
| 160 | - try { | ||
| 161 | - //因为CircularReveal动画是api21之后才有的,所以加个判断语句,免得崩溃 | ||
| 162 | - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { | ||
| 163 | - int cicular_R = view.getHeight() / 2 > view.getWidth() / 2 ? view.getHeight() / 2 : view.getWidth() / 2; | ||
| 164 | - Animator animator = null; | ||
| 165 | - if (!closeFlag) { | ||
| 166 | - animator = ViewAnimationUtils.createCircularReveal(view, (int) view.getWidth() / 2, (int) view.getHeight() / 2, 0, cicular_R); | ||
| 167 | - } else { | ||
| 168 | - animator = ViewAnimationUtils.createCircularReveal(view, (int) view.getWidth() / 2, (int) view.getHeight() / 2, cicular_R, 0); | ||
| 169 | - } | ||
| 170 | - animator.addListener(new Animator.AnimatorListener() { | ||
| 171 | - @Override | ||
| 172 | - public void onAnimationStart(Animator animator) { | ||
| 173 | - | ||
| 174 | - } | ||
| 175 | - | ||
| 176 | - @Override | ||
| 177 | - public void onAnimationEnd(Animator animator) { | ||
| 178 | - if (closeFlag) { | ||
| 179 | - view.setVisibility(View.GONE); | ||
| 180 | - } | ||
| 181 | - } | ||
| 182 | - | ||
| 183 | - @Override | ||
| 184 | - public void onAnimationCancel(Animator animator) { | ||
| 185 | - | ||
| 186 | - } | ||
| 187 | - | ||
| 188 | - @Override | ||
| 189 | - public void onAnimationRepeat(Animator animator) { | ||
| 190 | - | ||
| 191 | - } | ||
| 192 | - }); | ||
| 193 | - animator.setDuration(350); | ||
| 194 | - animator.start(); | ||
| 195 | - } else { | ||
| 196 | - if (closeFlag) { | ||
| 197 | - view.setVisibility(View.GONE); | ||
| 198 | - } | ||
| 199 | - } | ||
| 200 | - | ||
| 201 | - } catch (Exception e) { | ||
| 202 | - } | ||
| 203 | - } | ||
| 204 | - | ||
| 205 | -} |
app/src/main/java/com/cnlive/strike/xiaojiaspeaker/ToolBarTestActivity.java
| 1 | package com.cnlive.strike.xiaojiaspeaker; | 1 | package com.cnlive.strike.xiaojiaspeaker; |
| 2 | 2 | ||
| 3 | -import android.animation.AnimatorSet; | ||
| 4 | -import android.animation.ObjectAnimator; | ||
| 5 | import android.databinding.DataBindingUtil; | 3 | import android.databinding.DataBindingUtil; |
| 6 | import android.os.Build; | 4 | import android.os.Build; |
| 7 | -import android.os.Handler; | ||
| 8 | -import android.support.design.widget.AppBarLayout; | ||
| 9 | -import android.support.design.widget.CoordinatorLayout; | ||
| 10 | -import android.support.v4.content.ContextCompat; | ||
| 11 | -import android.support.v4.view.animation.FastOutLinearInInterpolator; | ||
| 12 | import android.support.v7.app.AppCompatActivity; | 5 | import android.support.v7.app.AppCompatActivity; |
| 13 | import android.os.Bundle; | 6 | import android.os.Bundle; |
| 14 | -import android.util.Log; | ||
| 15 | import android.view.View; | 7 | import android.view.View; |
| 16 | -import android.view.animation.AccelerateDecelerateInterpolator; | ||
| 17 | -import android.view.animation.Animation; | ||
| 18 | import android.view.animation.AnimationUtils; | 8 | import android.view.animation.AnimationUtils; |
| 19 | -import android.view.animation.AnticipateInterpolator; | ||
| 20 | -import android.view.animation.BounceInterpolator; | ||
| 21 | -import android.view.animation.CycleInterpolator; | ||
| 22 | -import android.view.animation.LinearInterpolator; | ||
| 23 | -import android.view.animation.OvershootInterpolator; | ||
| 24 | -import android.view.animation.TranslateAnimation; | ||
| 25 | -import android.widget.LinearLayout; | ||
| 26 | 9 | ||
| 27 | import com.cnlive.strike.speaker.R; | 10 | import com.cnlive.strike.speaker.R; |
| 28 | import com.cnlive.strike.speaker.databinding.ActivityToolBarTest1Binding; | 11 | import com.cnlive.strike.speaker.databinding.ActivityToolBarTest1Binding; |
| 29 | import com.cnlive.strike.speaker.databinding.ActivityToolBarTestBinding; | 12 | import com.cnlive.strike.speaker.databinding.ActivityToolBarTestBinding; |
| 30 | -import com.cnlive.strike.xiaojiaspeaker.util.utilcode.util.ScreenUtils; | ||
| 31 | import com.daimajia.androidanimations.library.Techniques; | 13 | import com.daimajia.androidanimations.library.Techniques; |
| 32 | import com.daimajia.androidanimations.library.YoYo; | 14 | import com.daimajia.androidanimations.library.YoYo; |
| 33 | 15 | ||
| 34 | public class ToolBarTestActivity extends AppCompatActivity { | 16 | public class ToolBarTestActivity extends AppCompatActivity { |
| 35 | - private ActivityToolBarTestBinding binding; | 17 | + private ActivityToolBarTest1Binding binding; |
| 36 | private String TAG = "ToolBarTestActivity"; | 18 | private String TAG = "ToolBarTestActivity"; |
| 37 | private boolean isFirstSlide = true; | 19 | private boolean isFirstSlide = true; |
| 38 | 20 | ||
| 39 | @Override | 21 | @Override |
| 40 | protected void onCreate(Bundle savedInstanceState) { | 22 | protected void onCreate(Bundle savedInstanceState) { |
| 41 | super.onCreate(savedInstanceState); | 23 | super.onCreate(savedInstanceState); |
| 42 | - binding = DataBindingUtil.setContentView(this, R.layout.activity_tool_bar_test); | 24 | + binding = DataBindingUtil.setContentView(this, R.layout.activity_tool_bar_test1); |
| 43 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { | 25 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { |
| 44 | - binding.scrollView.setOnScrollChangeListener(new View.OnScrollChangeListener() { | ||
| 45 | - @Override | ||
| 46 | - public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) { | ||
| 47 | - binding.llMenu.startAnimation(AnimationUtils.makeOutAnimation(ToolBarTestActivity.this, true)); | ||
| 48 | - binding.llMenu.setVisibility(View.INVISIBLE); | ||
| 49 | - } | ||
| 50 | - }); | 26 | +// binding.scrollView.setOnScrollChangeListener(new View.OnScrollChangeListener() { |
| 27 | +// @Override | ||
| 28 | +// public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) { | ||
| 29 | +// binding.llMenu.startAnimation(AnimationUtils.makeOutAnimation(ToolBarTestActivity.this, true)); | ||
| 30 | +// binding.llMenu.setVisibility(View.INVISIBLE); | ||
| 31 | +// } | ||
| 32 | +// }); | ||
| 51 | } | 33 | } |
| 34 | + | ||
| 35 | +// binding.ivAdd.setOnClickListener(new View.OnClickListener() { | ||
| 36 | +// @Override | ||
| 37 | +// public void onClick(View v) { | ||
| 38 | +//// ViewAnimUtil.setViewShowZoomIn(binding.ivLife,1.15f); | ||
| 39 | +// | ||
| 40 | +// } | ||
| 41 | +// }); | ||
| 52 | // LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) binding.ivLife.getLayoutParams(); | 42 | // LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) binding.ivLife.getLayoutParams(); |
| 53 | // Log.e(TAG, "onCreate: " + params.topMargin); | 43 | // Log.e(TAG, "onCreate: " + params.topMargin); |
| 54 | -// YoYo.with(Techniques.Swing) | ||
| 55 | -// .duration(700) | ||
| 56 | -// .repeat(0) | ||
| 57 | -// .playOn(binding.ivLife); | 44 | +// |
| 58 | // binding.appbar.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() { | 45 | // binding.appbar.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() { |
| 59 | // @Override | 46 | // @Override |
| 60 | // public void onOffsetChanged(AppBarLayout appBarLayout, int i) { | 47 | // public void onOffsetChanged(AppBarLayout appBarLayout, int i) { |
| @@ -188,7 +175,7 @@ public class ToolBarTestActivity extends AppCompatActivity { | @@ -188,7 +175,7 @@ public class ToolBarTestActivity extends AppCompatActivity { | ||
| 188 | // new Handler().postDelayed(new Runnable() { | 175 | // new Handler().postDelayed(new Runnable() { |
| 189 | // @Override | 176 | // @Override |
| 190 | // public void run() { | 177 | // public void run() { |
| 191 | -// ButtonAnimUtil.setViewShowZoomIn(binding.ivLife); | 178 | +// ViewAnimUtil.setViewShowZoomIn(binding.ivLife); |
| 192 | // YoYo.with(Techniques.Swing) | 179 | // YoYo.with(Techniques.Swing) |
| 193 | // .duration(700) | 180 | // .duration(700) |
| 194 | // .repeat(0) | 181 | // .repeat(0) |
app/src/main/java/com/cnlive/strike/xiaojiaspeaker/ViewAnimUtil.java
0 → 100644
| 1 | +package com.cnlive.strike.xiaojiaspeaker; | ||
| 2 | + | ||
| 3 | +import android.animation.Animator; | ||
| 4 | +import android.animation.AnimatorSet; | ||
| 5 | +import android.animation.ObjectAnimator; | ||
| 6 | +import android.os.Build; | ||
| 7 | +import android.os.Handler; | ||
| 8 | +import android.view.View; | ||
| 9 | +import android.view.ViewAnimationUtils; | ||
| 10 | +import android.view.animation.Animation; | ||
| 11 | +import android.view.animation.BounceInterpolator; | ||
| 12 | +import android.view.animation.DecelerateInterpolator; | ||
| 13 | +import android.view.animation.LinearInterpolator; | ||
| 14 | +import android.view.animation.RotateAnimation; | ||
| 15 | + | ||
| 16 | +import com.daimajia.androidanimations.library.Techniques; | ||
| 17 | +import com.daimajia.androidanimations.library.YoYo; | ||
| 18 | + | ||
| 19 | +/** | ||
| 20 | + * 圆形按钮点击特效 | ||
| 21 | + * | ||
| 22 | + * @author ShinnyYang | ||
| 23 | + */ | ||
| 24 | +public class ViewAnimUtil { | ||
| 25 | + | ||
| 26 | + //设置控件显示放大动画 | ||
| 27 | + public static void setViewShowZoomIn(View view, float zoomIn) { | ||
| 28 | + try { | ||
| 29 | + //放大动画 | ||
| 30 | + AnimatorSet animatorSetsuofang = new AnimatorSet();//组合动画 | ||
| 31 | + ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1, zoomIn); | ||
| 32 | + ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1, zoomIn); | ||
| 33 | + //延时播放缩小动画 | ||
| 34 | + ObjectAnimator scaleXBack = ObjectAnimator.ofFloat(view, "scaleX", zoomIn, 1); | ||
| 35 | + scaleXBack.setStartDelay(500); | ||
| 36 | + ObjectAnimator scaleYBack = ObjectAnimator.ofFloat(view, "scaleY", zoomIn, 1); | ||
| 37 | + scaleYBack.setStartDelay(500); | ||
| 38 | +// ObjectAnimator rotateBack1 = ObjectAnimator.ofFloat(view, "rotation", 30f, 0f).setDuration(100); | ||
| 39 | +//// //顺时针旋转45° | ||
| 40 | +// ObjectAnimator rotate = ObjectAnimator.ofFloat(view, "rotation", 30f, 30f).setDuration(100); | ||
| 41 | +// rotate.setStartDelay(300); | ||
| 42 | +//// //逆时针旋转45° | ||
| 43 | +// ObjectAnimator rotateBack = ObjectAnimator.ofFloat(view, "rotation", 30f, 0f).setDuration(100); | ||
| 44 | +// rotateBack.setStartDelay(300); | ||
| 45 | + //旋转 | ||
| 46 | + ObjectAnimator rotateBack = ObjectAnimator.ofFloat(view, "rotation", 0, 30, -30, 16, -16, 13, -13, 0); | ||
| 47 | + rotateBack.setStartDelay(100); | ||
| 48 | + animatorSetsuofang.play(scaleX).with(scaleY).with(scaleXBack).with(scaleYBack).with(rotateBack);//两个动画同时开始 | ||
| 49 | + animatorSetsuofang.setInterpolator(new DecelerateInterpolator()); | ||
| 50 | + animatorSetsuofang.setDuration(500); | ||
| 51 | + animatorSetsuofang.start(); | ||
| 52 | + | ||
| 53 | +// YoYo.with(Techniques.Swing) | ||
| 54 | +// .duration(1000) | ||
| 55 | +// .repeat(0) | ||
| 56 | +// .playOn(view); | ||
| 57 | + } catch (Exception e) { | ||
| 58 | + } | ||
| 59 | + } | ||
| 60 | +} |
app/src/main/res/layout/activity_tool_bar_test1.xml
| @@ -23,250 +23,168 @@ | @@ -23,250 +23,168 @@ | ||
| 23 | android:layout_width="match_parent" | 23 | android:layout_width="match_parent" |
| 24 | android:layout_height="wrap_content" | 24 | android:layout_height="wrap_content" |
| 25 | android:fitsSystemWindows="true" | 25 | android:fitsSystemWindows="true" |
| 26 | - | ||
| 27 | app:layout_scrollFlags="scroll|exitUntilCollapsed"> | 26 | app:layout_scrollFlags="scroll|exitUntilCollapsed"> |
| 28 | <!----> | 27 | <!----> |
| 29 | <LinearLayout | 28 | <LinearLayout |
| 30 | - android:id="@+id/ll_menu" | ||
| 31 | android:layout_width="match_parent" | 29 | android:layout_width="match_parent" |
| 32 | - android:layout_height="40dp" | ||
| 33 | - android:gravity="center|right" | ||
| 34 | - app:layout_collapseMode="pin"> | ||
| 35 | - | 30 | + android:layout_height="match_parent" |
| 31 | + android:orientation="vertical"> | ||
| 36 | <LinearLayout | 32 | <LinearLayout |
| 37 | - android:id="@+id/ll_search" | ||
| 38 | - android:layout_width="45dp" | ||
| 39 | - android:layout_height="match_parent" | ||
| 40 | - android:layout_marginTop="5dp" | ||
| 41 | - android:layout_marginBottom="5dp" | ||
| 42 | - android:clickable="true" | ||
| 43 | - android:focusable="true" | ||
| 44 | - android:gravity="center"> | ||
| 45 | - | ||
| 46 | - <ImageView | ||
| 47 | - android:layout_width="wrap_content" | ||
| 48 | - android:layout_height="19dp" | ||
| 49 | - android:background="@drawable/icon_mian_search" | ||
| 50 | - android:clickable="false" | ||
| 51 | - android:focusable="false" /> | ||
| 52 | - </LinearLayout> | 33 | + android:id="@+id/ll_menu" |
| 34 | + android:layout_width="match_parent" | ||
| 35 | + android:layout_height="40dp" | ||
| 36 | + android:gravity="center|right" | ||
| 37 | + app:layout_collapseMode="pin"> | ||
| 38 | + | ||
| 39 | + <LinearLayout | ||
| 40 | + android:id="@+id/ll_search" | ||
| 41 | + android:layout_width="45dp" | ||
| 42 | + android:layout_height="match_parent" | ||
| 43 | + android:layout_marginTop="5dp" | ||
| 44 | + android:layout_marginBottom="5dp" | ||
| 45 | + android:clickable="true" | ||
| 46 | + android:focusable="true" | ||
| 47 | + android:gravity="center"> | ||
| 53 | 48 | ||
| 54 | - <FrameLayout | ||
| 55 | - android:id="@+id/fl_contact" | ||
| 56 | - android:layout_width="45dp" | ||
| 57 | - android:layout_height="match_parent" | ||
| 58 | - android:layout_marginTop="5dp" | ||
| 59 | - android:layout_marginBottom="5dp" | ||
| 60 | - android:clickable="true" | ||
| 61 | - android:focusable="true"> | 49 | + <ImageView |
| 50 | + android:layout_width="wrap_content" | ||
| 51 | + android:layout_height="19dp" | ||
| 52 | + android:background="@drawable/icon_mian_search" | ||
| 53 | + android:clickable="false" | ||
| 54 | + android:focusable="false" /> | ||
| 55 | + </LinearLayout> | ||
| 62 | 56 | ||
| 63 | <FrameLayout | 57 | <FrameLayout |
| 64 | - android:layout_width="wrap_content" | ||
| 65 | - android:layout_height="wrap_content" | ||
| 66 | - android:layout_gravity="center" | ||
| 67 | - android:clickable="false" | ||
| 68 | - android:focusable="false"> | 58 | + android:id="@+id/fl_contact" |
| 59 | + android:layout_width="45dp" | ||
| 60 | + android:layout_height="match_parent" | ||
| 61 | + android:layout_marginTop="5dp" | ||
| 62 | + android:layout_marginBottom="5dp" | ||
| 63 | + android:clickable="true" | ||
| 64 | + android:focusable="true"> | ||
| 65 | + | ||
| 66 | + <FrameLayout | ||
| 67 | + android:layout_width="wrap_content" | ||
| 68 | + android:layout_height="wrap_content" | ||
| 69 | + android:layout_gravity="center" | ||
| 70 | + android:clickable="false" | ||
| 71 | + android:focusable="false"> | ||
| 72 | + | ||
| 73 | + <ImageView | ||
| 74 | + android:layout_width="18dp" | ||
| 75 | + android:layout_height="18dp" | ||
| 76 | + android:layout_gravity="center" | ||
| 77 | + android:background="@drawable/icon_mian_contact" | ||
| 78 | + android:clickable="false" | ||
| 79 | + android:focusable="false" /> | ||
| 80 | + | ||
| 81 | + </FrameLayout> | ||
| 82 | + </FrameLayout> | ||
| 83 | + | ||
| 84 | + <LinearLayout | ||
| 85 | + android:id="@+id/ll_add" | ||
| 86 | + android:layout_width="45dp" | ||
| 87 | + android:layout_height="match_parent" | ||
| 88 | + android:layout_marginTop="5dp" | ||
| 89 | + android:layout_marginRight="5dp" | ||
| 90 | + android:layout_marginBottom="5dp" | ||
| 91 | + android:clickable="true" | ||
| 92 | + android:focusable="true" | ||
| 93 | + android:gravity="center"> | ||
| 69 | 94 | ||
| 70 | <ImageView | 95 | <ImageView |
| 96 | + android:id="@+id/iv_add" | ||
| 71 | android:layout_width="18dp" | 97 | android:layout_width="18dp" |
| 72 | android:layout_height="18dp" | 98 | android:layout_height="18dp" |
| 73 | - android:layout_gravity="center" | ||
| 74 | - android:background="@drawable/icon_mian_contact" | 99 | + android:background="@drawable/icon_mian_add" |
| 75 | android:clickable="false" | 100 | android:clickable="false" |
| 76 | android:focusable="false" /> | 101 | android:focusable="false" /> |
| 77 | - | ||
| 78 | - </FrameLayout> | ||
| 79 | - </FrameLayout> | ||
| 80 | - | ||
| 81 | - <LinearLayout | ||
| 82 | - android:id="@+id/ll_add" | ||
| 83 | - android:layout_width="45dp" | ||
| 84 | - android:layout_height="match_parent" | ||
| 85 | - android:layout_marginTop="5dp" | ||
| 86 | - android:layout_marginRight="5dp" | ||
| 87 | - android:layout_marginBottom="5dp" | ||
| 88 | - android:clickable="true" | ||
| 89 | - android:focusable="true" | ||
| 90 | - android:gravity="center"> | ||
| 91 | - | ||
| 92 | - <ImageView | ||
| 93 | - android:id="@+id/iv_add" | ||
| 94 | - android:layout_width="18dp" | ||
| 95 | - android:layout_height="18dp" | ||
| 96 | - android:background="@drawable/icon_mian_add" | ||
| 97 | - android:clickable="false" | ||
| 98 | - android:focusable="false" /> | 102 | + </LinearLayout> |
| 99 | </LinearLayout> | 103 | </LinearLayout> |
| 100 | - </LinearLayout> | ||
| 101 | - <!----> | ||
| 102 | - <LinearLayout | ||
| 103 | - android:layout_width="match_parent" | ||
| 104 | - android:layout_height="wrap_content" | ||
| 105 | - android:layout_gravity="bottom" | ||
| 106 | - android:orientation="horizontal" | ||
| 107 | - android:visibility="gone" | ||
| 108 | - app:layout_collapseMode="parallax"> | ||
| 109 | - | 104 | + <!----> |
| 110 | <LinearLayout | 105 | <LinearLayout |
| 111 | - android:layout_width="0dp" | 106 | + android:layout_width="match_parent" |
| 112 | android:layout_height="wrap_content" | 107 | android:layout_height="wrap_content" |
| 113 | - android:layout_weight="1" | ||
| 114 | - android:gravity="center" | ||
| 115 | - android:orientation="vertical"> | ||
| 116 | - | ||
| 117 | - <ImageView | ||
| 118 | - android:layout_width="55dp" | ||
| 119 | - android:layout_height="55dp" | ||
| 120 | - android:layout_gravity="center" | ||
| 121 | - android:background="@drawable/icon_mian_life" | ||
| 122 | - android:focusable="false" /> | ||
| 123 | - | ||
| 124 | - <TextView | ||
| 125 | - android:layout_width="wrap_content" | ||
| 126 | - android:layout_height="wrap_content" | ||
| 127 | - android:focusable="false" | ||
| 128 | - android:text="生活圈" | ||
| 129 | - android:textColor="@color/color_282828" | ||
| 130 | - android:textSize="13sp" /> | ||
| 131 | - </LinearLayout> | 108 | + android:layout_gravity="bottom" |
| 109 | + android:orientation="horizontal" | ||
| 110 | + app:layout_collapseMode="pin"> | ||
| 132 | 111 | ||
| 133 | - <LinearLayout | ||
| 134 | - android:layout_width="0dp" | ||
| 135 | - android:layout_height="wrap_content" | ||
| 136 | - android:layout_weight="1" | ||
| 137 | - android:gravity="center" | ||
| 138 | - android:orientation="vertical"> | ||
| 139 | - | ||
| 140 | - <ImageView | ||
| 141 | - android:layout_width="55dp" | ||
| 142 | - android:layout_height="55dp" | ||
| 143 | - android:layout_gravity="center" | ||
| 144 | - android:background="@drawable/icon_main_subscribe" | ||
| 145 | - android:focusable="false" /> | ||
| 146 | - | ||
| 147 | - <TextView | ||
| 148 | - android:layout_width="wrap_content" | 112 | + <LinearLayout |
| 113 | + android:layout_width="0dp" | ||
| 149 | android:layout_height="wrap_content" | 114 | android:layout_height="wrap_content" |
| 150 | - android:focusable="false" | ||
| 151 | - android:text="订阅号" | ||
| 152 | - android:textColor="@color/color_282828" | ||
| 153 | - android:textSize="13sp" /> | ||
| 154 | - </LinearLayout> | 115 | + android:layout_weight="1" |
| 116 | + android:gravity="center" | ||
| 117 | + android:orientation="vertical"> | ||
| 155 | 118 | ||
| 156 | - <LinearLayout | ||
| 157 | - android:layout_width="0dp" | ||
| 158 | - android:layout_height="wrap_content" | ||
| 159 | - android:layout_weight="1" | ||
| 160 | - android:gravity="center" | ||
| 161 | - android:orientation="vertical"> | ||
| 162 | - | ||
| 163 | - <ImageView | ||
| 164 | - android:layout_width="55dp" | ||
| 165 | - android:layout_height="55dp" | ||
| 166 | - android:layout_gravity="center" | ||
| 167 | - android:background="@drawable/icon_main_shop" | ||
| 168 | - android:focusable="false" /> | ||
| 169 | - | ||
| 170 | - <TextView | ||
| 171 | - android:layout_width="wrap_content" | 119 | + <ImageView |
| 120 | + android:layout_width="55dp" | ||
| 121 | + android:layout_height="55dp" | ||
| 122 | + android:layout_gravity="center" | ||
| 123 | + android:background="@drawable/icon_mian_life" | ||
| 124 | + android:focusable="false" /> | ||
| 125 | + | ||
| 126 | + <TextView | ||
| 127 | + android:layout_width="wrap_content" | ||
| 128 | + android:layout_height="wrap_content" | ||
| 129 | + android:focusable="false" | ||
| 130 | + android:text="生活圈" | ||
| 131 | + android:textColor="@color/color_282828" | ||
| 132 | + android:textSize="13sp" /> | ||
| 133 | + </LinearLayout> | ||
| 134 | + | ||
| 135 | + <LinearLayout | ||
| 136 | + android:layout_width="0dp" | ||
| 172 | android:layout_height="wrap_content" | 137 | android:layout_height="wrap_content" |
| 173 | - android:focusable="false" | ||
| 174 | - android:text="优选库" | ||
| 175 | - android:textColor="@color/color_282828" | ||
| 176 | - android:textSize="13sp" /> | ||
| 177 | - </LinearLayout> | ||
| 178 | - </LinearLayout> | 138 | + android:layout_weight="1" |
| 139 | + android:gravity="center" | ||
| 140 | + android:orientation="vertical"> | ||
| 179 | 141 | ||
| 180 | - </android.support.design.widget.CollapsingToolbarLayout> | ||
| 181 | - <!-- --> | ||
| 182 | - <LinearLayout | ||
| 183 | - android:id="@+id/ll_root" | ||
| 184 | - android:layout_width="match_parent" | ||
| 185 | - android:layout_height="match_parent" | ||
| 186 | - android:layout_gravity="bottom" | ||
| 187 | - android:orientation="horizontal" | ||
| 188 | - app:layout_collapseMode="parallax"> | 142 | + <ImageView |
| 143 | + android:layout_width="55dp" | ||
| 144 | + android:layout_height="55dp" | ||
| 145 | + android:layout_gravity="center" | ||
| 146 | + android:background="@drawable/icon_main_subscribe" | ||
| 147 | + android:focusable="false" /> | ||
| 189 | 148 | ||
| 190 | - <LinearLayout | ||
| 191 | - android:id="@+id/ll_life" | ||
| 192 | - android:layout_width="0dp" | ||
| 193 | - android:layout_height="match_parent" | ||
| 194 | - android:layout_weight="1" | ||
| 195 | - android:gravity="center" | ||
| 196 | - android:orientation="vertical"> | 149 | + <TextView |
| 150 | + android:layout_width="wrap_content" | ||
| 151 | + android:layout_height="wrap_content" | ||
| 152 | + android:focusable="false" | ||
| 153 | + android:text="订阅号" | ||
| 154 | + android:textColor="@color/color_282828" | ||
| 155 | + android:textSize="13sp" /> | ||
| 156 | + </LinearLayout> | ||
| 157 | + | ||
| 158 | + <LinearLayout | ||
| 159 | + android:layout_width="0dp" | ||
| 160 | + android:layout_height="wrap_content" | ||
| 161 | + android:layout_weight="1" | ||
| 162 | + android:gravity="center" | ||
| 163 | + android:orientation="vertical"> | ||
| 197 | 164 | ||
| 198 | - <ImageView | ||
| 199 | - android:id="@+id/iv_life" | ||
| 200 | - android:layout_width="55dp" | ||
| 201 | - android:layout_height="55dp" | ||
| 202 | - android:layout_gravity="center" | ||
| 203 | - android:background="@drawable/icon_mian_life" | ||
| 204 | - android:focusable="false" /> | ||
| 205 | - | ||
| 206 | - <TextView | ||
| 207 | - android:id="@+id/tv_circle" | ||
| 208 | - android:layout_width="wrap_content" | ||
| 209 | - android:layout_height="wrap_content" | ||
| 210 | - android:focusable="false" | ||
| 211 | - android:text="生活圈" | ||
| 212 | - android:textColor="@color/color_282828" | ||
| 213 | - android:textSize="13sp" /> | ||
| 214 | - </LinearLayout> | 165 | + <ImageView |
| 166 | + android:layout_width="55dp" | ||
| 167 | + android:layout_height="55dp" | ||
| 168 | + android:layout_gravity="center" | ||
| 169 | + android:background="@drawable/icon_main_shop" | ||
| 170 | + android:focusable="false" /> | ||
| 215 | 171 | ||
| 216 | - <LinearLayout | ||
| 217 | - android:id="@+id/ll_sub" | ||
| 218 | - android:layout_width="0dp" | ||
| 219 | - android:layout_height="match_parent" | ||
| 220 | - android:layout_weight="1" | ||
| 221 | - android:gravity="center" | 172 | + <TextView |
| 173 | + android:layout_width="wrap_content" | ||
| 174 | + android:layout_height="wrap_content" | ||
| 175 | + android:focusable="false" | ||
| 176 | + android:text="优选库" | ||
| 177 | + android:textColor="@color/color_282828" | ||
| 178 | + android:textSize="13sp" /> | ||
| 179 | + </LinearLayout> | ||
| 222 | 180 | ||
| 223 | - android:orientation="vertical"> | 181 | + </LinearLayout> |
| 224 | 182 | ||
| 225 | - <ImageView | ||
| 226 | - android:id="@+id/iv_sub" | ||
| 227 | - android:layout_width="55dp" | ||
| 228 | - android:layout_height="55dp" | ||
| 229 | - android:layout_gravity="center" | ||
| 230 | - android:background="@drawable/icon_main_subscribe" | ||
| 231 | - android:focusable="false" /> | ||
| 232 | - | ||
| 233 | - <TextView | ||
| 234 | - android:id="@+id/tv_sub" | ||
| 235 | - android:layout_width="wrap_content" | ||
| 236 | - android:layout_height="wrap_content" | ||
| 237 | - android:focusable="false" | ||
| 238 | - android:text="订阅号" | ||
| 239 | - android:textColor="@color/color_282828" | ||
| 240 | - android:textSize="13sp" /> | 183 | +<!-- --> |
| 241 | </LinearLayout> | 184 | </LinearLayout> |
| 242 | 185 | ||
| 243 | - <LinearLayout | ||
| 244 | - android:id="@+id/ll_shop" | ||
| 245 | - android:layout_width="0dp" | ||
| 246 | - android:layout_height="match_parent" | ||
| 247 | - android:layout_weight="1" | ||
| 248 | - android:gravity="center" | ||
| 249 | - | ||
| 250 | - android:orientation="vertical"> | ||
| 251 | - | ||
| 252 | - <ImageView | ||
| 253 | - android:id="@+id/iv_shop" | ||
| 254 | - android:layout_width="55dp" | ||
| 255 | - android:layout_height="55dp" | ||
| 256 | - android:layout_gravity="center" | ||
| 257 | - android:background="@drawable/icon_main_shop" | ||
| 258 | - android:focusable="false" /> | ||
| 259 | - | ||
| 260 | - <TextView | ||
| 261 | - android:id="@+id/tv_shop" | ||
| 262 | - android:layout_width="wrap_content" | ||
| 263 | - android:layout_height="wrap_content" | ||
| 264 | - android:focusable="false" | ||
| 265 | - android:text="优选库" | ||
| 266 | - android:textColor="@color/color_282828" | ||
| 267 | - android:textSize="13sp" /> | ||
| 268 | - </LinearLayout> | ||
| 269 | - </LinearLayout> | 186 | + </android.support.design.widget.CollapsingToolbarLayout> |
| 187 | + <!-- --> | ||
| 270 | <!-- --> | 188 | <!-- --> |
| 271 | </android.support.design.widget.AppBarLayout> | 189 | </android.support.design.widget.AppBarLayout> |
| 272 | 190 |
config.gradle
module_xiaojiaSoundBox/src/main/java/com/cnlive/strike/xiaojiaspeaker/frame/presenter/SetFriendsRolePresenter.java
| @@ -79,6 +79,12 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | @@ -79,6 +79,12 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | ||
| 79 | }); | 79 | }); |
| 80 | } | 80 | } |
| 81 | 81 | ||
| 82 | + /** | ||
| 83 | + * 设置家庭角色 | ||
| 84 | + * | ||
| 85 | + * @param context | ||
| 86 | + * @param contactsInvite | ||
| 87 | + */ | ||
| 82 | public void invitFamilyMember(Context context, String contactsInvite) { | 88 | public void invitFamilyMember(Context context, String contactsInvite) { |
| 83 | if (null == getView()) { | 89 | if (null == getView()) { |
| 84 | return; | 90 | return; |
| @@ -103,8 +109,8 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | @@ -103,8 +109,8 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | ||
| 103 | return; | 109 | return; |
| 104 | } | 110 | } |
| 105 | QMUITipDialogUtil.dismessDialog(); | 111 | QMUITipDialogUtil.dismessDialog(); |
| 106 | - AlertUtil.showDeftToast(context,"邀请成功"); | ||
| 107 | - EventBus.getDefault().post(new EventMsg(EventMsg.INVIT_FRIEND_SUCCESS,null)); | 112 | + AlertUtil.showDeftToast(context, "邀请成功"); |
| 113 | + EventBus.getDefault().post(new EventMsg(EventMsg.INVIT_FRIEND_SUCCESS, null)); | ||
| 108 | } | 114 | } |
| 109 | }) | 115 | }) |
| 110 | .setFailureCallback(new FailureCallback() { | 116 | .setFailureCallback(new FailureCallback() { |
| @@ -116,7 +122,11 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | @@ -116,7 +122,11 @@ public class SetFriendsRolePresenter extends MvpBasePresenter<SetFriendsRoleView | ||
| 116 | return; | 122 | return; |
| 117 | } | 123 | } |
| 118 | QMUITipDialogUtil.dismessDialog(); | 124 | QMUITipDialogUtil.dismessDialog(); |
| 119 | - AlertUtil.showDeftToast(context,s); | 125 | + AlertUtil.showDeftToast(context, s); |
| 126 | + //有角色被占用 | ||
| 127 | + if (i == 4313) { | ||
| 128 | + EventBus.getDefault().post(new EventMsg(EventMsg.HAS_ROLE_USED, null)); | ||
| 129 | + } | ||
| 120 | } | 130 | } |
| 121 | }) | 131 | }) |
| 122 | 132 |
module_xiaojiaSoundBox/src/main/java/com/cnlive/strike/xiaojiaspeaker/model/message/EventMsg.java
| @@ -8,6 +8,7 @@ public class EventMsg { | @@ -8,6 +8,7 @@ public class EventMsg { | ||
| 8 | public static final int GO_TO_CHINA_LISTEN_PAGE = 4;//邀请好友成功页面 | 8 | public static final int GO_TO_CHINA_LISTEN_PAGE = 4;//邀请好友成功页面 |
| 9 | public static final int HAS_FRIEND_JOIN_FRIMALY = 5;//有好友加入家庭 | 9 | public static final int HAS_FRIEND_JOIN_FRIMALY = 5;//有好友加入家庭 |
| 10 | public static final int HAS_FRIEND_REMOVE_FRIMALY = 6;//有好友移除家庭 | 10 | public static final int HAS_FRIEND_REMOVE_FRIMALY = 6;//有好友移除家庭 |
| 11 | + public static final int HAS_ROLE_USED = 7;//已经有角色被占用了 | ||
| 11 | 12 | ||
| 12 | private int eventType; | 13 | private int eventType; |
| 13 | private Object data; | 14 | private Object data; |
module_xiaojiaSoundBox/src/main/java/com/cnlive/strike/xiaojiaspeaker/ui/fragment/InvitFriendFragment.java
| @@ -14,6 +14,11 @@ import com.cnlive.strike.xiaojiaspeaker.commonInfo.XiaoJIaCommInfo; | @@ -14,6 +14,11 @@ import com.cnlive.strike.xiaojiaspeaker.commonInfo.XiaoJIaCommInfo; | ||
| 14 | import com.cnlive.strike.xiaojiaspeaker.databinding.FragmentInvitFriendBinding; | 14 | import com.cnlive.strike.xiaojiaspeaker.databinding.FragmentInvitFriendBinding; |
| 15 | import com.cnlive.strike.xiaojiaspeaker.frame.presenter.InvitFriendPresenter; | 15 | import com.cnlive.strike.xiaojiaspeaker.frame.presenter.InvitFriendPresenter; |
| 16 | import com.cnlive.strike.xiaojiaspeaker.frame.view.InvitFriendView; | 16 | import com.cnlive.strike.xiaojiaspeaker.frame.view.InvitFriendView; |
| 17 | +import com.cnlive.strike.xiaojiaspeaker.model.message.EventMsg; | ||
| 18 | +import com.cnlive.strike.xiaojiaspeaker.util.EventBusUtil; | ||
| 19 | + | ||
| 20 | +import org.greenrobot.eventbus.Subscribe; | ||
| 21 | +import org.greenrobot.eventbus.ThreadMode; | ||
| 17 | 22 | ||
| 18 | /** | 23 | /** |
| 19 | * 二维码邀请加入 | 24 | * 二维码邀请加入 |
| @@ -63,4 +68,11 @@ public class InvitFriendFragment extends MvpBindingFragment<InvitFriendView, Inv | @@ -63,4 +68,11 @@ public class InvitFriendFragment extends MvpBindingFragment<InvitFriendView, Inv | ||
| 63 | 68 | ||
| 64 | } | 69 | } |
| 65 | } | 70 | } |
| 71 | + | ||
| 72 | + @Override | ||
| 73 | + public void onDestroy() { | ||
| 74 | + super.onDestroy(); | ||
| 75 | + } | ||
| 76 | + | ||
| 77 | + | ||
| 66 | } | 78 | } |
module_xiaojiaSoundBox/src/main/java/com/cnlive/strike/xiaojiaspeaker/ui/fragment/SelectIMFriendFragment.java
| @@ -20,6 +20,7 @@ import org.greenrobot.eventbus.Subscribe; | @@ -20,6 +20,7 @@ import org.greenrobot.eventbus.Subscribe; | ||
| 20 | import org.greenrobot.eventbus.ThreadMode; | 20 | import org.greenrobot.eventbus.ThreadMode; |
| 21 | 21 | ||
| 22 | public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendView, SelectIMFriendPresenter, Object, FragmentSelectImFriendBinding> { | 22 | public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendView, SelectIMFriendPresenter, Object, FragmentSelectImFriendBinding> { |
| 23 | + private String currentSelectFamilyId; | ||
| 23 | 24 | ||
| 24 | public static SelectIMFriendFragment newInstance(String currentSelectFamilyId) { | 25 | public static SelectIMFriendFragment newInstance(String currentSelectFamilyId) { |
| 25 | SelectIMFriendFragment fragment = new SelectIMFriendFragment(); | 26 | SelectIMFriendFragment fragment = new SelectIMFriendFragment(); |
| @@ -48,7 +49,7 @@ public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendVie | @@ -48,7 +49,7 @@ public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendVie | ||
| 48 | initTopBar(); | 49 | initTopBar(); |
| 49 | if (null != getMvpView()) { | 50 | if (null != getMvpView()) { |
| 50 | if (null != getArguments()) { | 51 | if (null != getArguments()) { |
| 51 | - String currentSelectFamilyId = getArguments().getString("currentSelectFamilyId"); | 52 | + currentSelectFamilyId = getArguments().getString("currentSelectFamilyId"); |
| 52 | if (!TextUtils.isEmpty(currentSelectFamilyId)) { | 53 | if (!TextUtils.isEmpty(currentSelectFamilyId)) { |
| 53 | getMvpView().setCurrentSelectFamilyId(currentSelectFamilyId); | 54 | getMvpView().setCurrentSelectFamilyId(currentSelectFamilyId); |
| 54 | // getMvpView().initView(null); | 55 | // getMvpView().initView(null); |
| @@ -89,5 +90,13 @@ public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendVie | @@ -89,5 +90,13 @@ public class SelectIMFriendFragment extends MvpBindingFragment<SelectIMFriendVie | ||
| 89 | getActivity().finish(); | 90 | getActivity().finish(); |
| 90 | } | 91 | } |
| 91 | } | 92 | } |
| 93 | + //已经有角色被占用,重新刷新列表 | ||
| 94 | + else if (EventMsg.HAS_ROLE_USED == msg.getEventType()) { | ||
| 95 | + if (null != getMvpView()) { | ||
| 96 | + if (!TextUtils.isEmpty(currentSelectFamilyId)) { | ||
| 97 | + getPresenter().getFamilyMember(getActivity(), currentSelectFamilyId); | ||
| 98 | + } | ||
| 99 | + } | ||
| 100 | + } | ||
| 92 | } | 101 | } |
| 93 | } | 102 | } |
module_xiaojiaSoundBox/src/main/java/com/cnlive/strike/xiaojiaspeaker/ui/fragment/SetFriendsRoleFragment.java
| @@ -91,5 +91,11 @@ public class SetFriendsRoleFragment extends MvpBindingFragment<SetFriendsRoleVie | @@ -91,5 +91,11 @@ public class SetFriendsRoleFragment extends MvpBindingFragment<SetFriendsRoleVie | ||
| 91 | getActivity().finish(); | 91 | getActivity().finish(); |
| 92 | } | 92 | } |
| 93 | } | 93 | } |
| 94 | + //已经有角色被占用 | ||
| 95 | + else if (EventMsg.HAS_ROLE_USED == msg.getEventType()) { | ||
| 96 | + if (null != getMvpView()) { | ||
| 97 | + getActivity().finish(); | ||
| 98 | + } | ||
| 99 | + } | ||
| 94 | } | 100 | } |
| 95 | } | 101 | } |