Explorar el Código

Merge branch 'develop' of https://github.com/swict/LifeplusAndroid into develop

hyodong.min hace 6 años
padre
commit
4568ced1cb

+ 1 - 0
app/build.gradle

@@ -137,6 +137,7 @@ dependencies {
     implementation 'com.facebook.android:facebook-share:4.38.1'
     implementation 'com.githang:status-bar-compat:0.7'
     implementation 'com.wefika:flowlayout:0.4.1'
+    implementation 'com.robinhood.ticker:ticker:2.0.1'
 
     /*********************************
      * UNIT TEST

+ 36 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/dialog/CoinSavingDialog.java

@@ -1,5 +1,7 @@
 package kr.co.zumo.app.lifeplus.view.dialog;
 
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
 import android.os.Bundle;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
@@ -7,9 +9,13 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.Window;
+import android.view.animation.DecelerateInterpolator;
 import android.widget.ImageView;
+import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
+import com.robinhood.ticker.TickerUtils;
+import com.robinhood.ticker.TickerView;
 
 import kr.co.zumo.app.R;
 
@@ -26,6 +32,8 @@ import kr.co.zumo.app.R;
 public class CoinSavingDialog extends DialogBase {
 
   private ImageView imageViewCoin;
+  private TextView textViewCoinDetail;
+  private TickerView tickerView;
 
   @Nullable
   @Override
@@ -38,7 +46,35 @@ public class CoinSavingDialog extends DialogBase {
     Window window = getDialog().getWindow();
     window.setBackgroundDrawableResource(R.color.CB3FFFFFF);
     imageViewCoin = getView().findViewById(R.id.image_view_coin);
+    textViewCoinDetail = getView().findViewById(R.id.text_view_coin_detail);
 
+    tickerView = getView().findViewById(R.id.ticker_view);
+    tickerView.setText("00000");
+    tickerView.setCharacterLists(TickerUtils.provideNumberList());
+    tickerView.setText("15849", true);
+    tickerView.setAnimationInterpolator(new DecelerateInterpolator());
     Glide.with(imageViewCoin).asGif().load(R.raw.coin_saving).into(imageViewCoin);
+
+    textViewCoinDetail.setText("+100");
+
+    setAnimationSetting();
+    startAnimation();
+  }
+
+  private void setAnimationSetting() {
+    textViewCoinDetail.setAlpha(0.0f);
+    textViewCoinDetail.setTranslationY(100f);
+  }
+
+  private void startAnimation() {
+    ObjectAnimator alphaAnimator = ObjectAnimator.ofFloat(textViewCoinDetail, View.ALPHA, 0.0f, 1.0f);
+    alphaAnimator.setDuration(1000);
+    ObjectAnimator translationYAnimator = ObjectAnimator.ofFloat(textViewCoinDetail, View.TRANSLATION_Y, textViewCoinDetail.getTranslationY(), 0f);
+    translationYAnimator.setDuration(1000);
+
+    AnimatorSet animatorSet = new AnimatorSet();
+    animatorSet.playTogether(alphaAnimator, translationYAnimator);
+    animatorSet.setStartDelay(500);
+    animatorSet.start();
   }
 }

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/common/CoinPopupDriver.java

@@ -1,4 +1,4 @@
-package kr.co.zumo.app.lifeplus.view.screen.common;
+ package kr.co.zumo.app.lifeplus.view.screen.common;
 
 
 import android.os.Handler;
@@ -62,7 +62,7 @@ public class CoinPopupDriver {
 
         }
       }
-    }, 2000);
+    }, 4000);
 
 
   }

+ 2 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/member/MemberBlockFragment.java

@@ -13,6 +13,7 @@ import android.view.ViewGroup;
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
 import kr.co.zumo.app.lifeplus.model.BlankModel;
+import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.screen.FragmentBase;
 
@@ -48,6 +49,7 @@ public class MemberBlockFragment extends FragmentBase<MemberBlockPresenter> {
       presenter.onEvent(new Event.Builder(Event.EMAIL_CLICK).build());
     });
 
+    getView().setPadding(0, ResourceUtil.getStatusBarHeightManual(), 0, 0);
   }
 
   @Override

+ 1 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/member/MemberRestActiveCompletedFragment.java

@@ -62,6 +62,7 @@ public class MemberRestActiveCompletedFragment extends FragmentBase<MemberRestAc
       presenter.onEvent(new Event.Builder(Event.EMAIL_CLICK).build());
     });
 
+    getView().setPadding(0, ResourceUtil.getStatusBarHeightManual(), 0, 0);
   }
 
   @Override

+ 2 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/member/MemberRestStartFragment.java

@@ -12,6 +12,7 @@ import android.view.ViewGroup;
 
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
+import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.IView;
 import kr.co.zumo.app.lifeplus.view.screen.FragmentBase;
@@ -51,6 +52,7 @@ public class MemberRestStartFragment extends FragmentBase<MemberRestStartPresent
       presenter.onEvent(new Event.Builder(Event.EMAIL_CLICK).build());
     });
 
+    getView().setPadding(0, ResourceUtil.getStatusBarHeightManual(), 0, 0);
   }
 
   @Override

+ 16 - 6
app/src/main/res/layout/dialog_coin_saving.xml

@@ -60,23 +60,32 @@
         android:text="@string/my_coin"
         android:textColor="@color/C000000"
         android:textSize="12sp"
+        app:layout_constraintEnd_toStartOf="@+id/ticker_view"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintTop_toTopOf="parent"
         />
 
-      <TextView
-        android:layout_width="wrap_content"
+      <com.robinhood.ticker.TickerView
+        android:id="@+id/ticker_view"
+        android:layout_width="0dp"
         android:layout_height="wrap_content"
+        android:layout_marginStart="10dp"
         android:layout_marginEnd="2dp"
-        android:gravity="end"
+        android:gravity="center"
         android:lineSpacingExtra="4sp"
+        android:singleLine="true"
         android:textColor="@color/C000000"
         android:textSize="12sp"
+        app:ticker_animationDuration="2000"
+        app:ticker_defaultCharacterList="number"
+        app:layout_constrainedWidth="true"
         app:layout_constraintBottom_toBottomOf="@+id/image_view_coin_icon"
         app:layout_constraintEnd_toStartOf="@+id/image_view_coin_icon"
+        app:layout_constraintStart_toEndOf="@+id/text_view_my_coin"
         app:layout_constraintTop_toTopOf="@+id/image_view_coin_icon"
-        tools:text="0"/>
+        app:ticker_animateMeasurementChange="true"
+        tools:text="15800"/>
 
       <ImageView
         android:id="@+id/image_view_coin_icon"
@@ -84,6 +93,7 @@
         android:layout_height="wrap_content"
         android:layout_marginEnd="17dp"
         app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toEndOf="@+id/ticker_view"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintTop_toTopOf="parent"
         app:srcCompat="@drawable/ic_coin_saving"
@@ -103,13 +113,13 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:lineSpacingExtra="4sp"
+        android:text="스페셜 코드 등록 완료"
         android:textColor="@color/C000000"
         android:textSize="12sp"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toStartOf="parent"
-        app:layout_constraintTop_toTopOf="parent"
-        android:text="스페셜 코드 등록 완료"/>
+        app:layout_constraintTop_toTopOf="parent"/>
     </android.support.constraint.ConstraintLayout>
   </android.support.constraint.ConstraintLayout>
 </android.support.constraint.ConstraintLayout>

+ 3 - 1
app/src/main/res/layout/fragment_my_main.xml

@@ -6,11 +6,13 @@
   android:id="@+id/scroller"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
+
   android:orientation="vertical">
 
   <android.support.constraint.ConstraintLayout
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:descendantFocusability="blocksDescendants">
 
     <!--member header layout -->
     <android.support.constraint.ConstraintLayout