From e74a5af364fe7c9a077440286e0a0f9fa9169d5e Mon Sep 17 00:00:00 2001 From: George Zuo Date: Sat, 3 Dec 2016 15:41:23 +0800 Subject: [PATCH 1/3] fix a bug that mainActivity shows up when dismiss splashActivity --- .../module/commonality/AppSplashActivity.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java index 312a692..6c57bb3 100644 --- a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java +++ b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java @@ -7,6 +7,7 @@ import android.app.Activity; import android.content.Intent; import android.os.Bundle; +import android.view.animation.AnimationSet; import android.widget.ImageView; import com.hotbitmapgg.moequest.R; @@ -38,6 +39,8 @@ public class AppSplashActivity extends Activity private Subscription subscribe; + private AnimatorSet mSplashSet; + @Override protected void onCreate(Bundle savedInstanceState) { @@ -65,11 +68,11 @@ private void startAnim() ObjectAnimator animatorX = ObjectAnimator.ofFloat(mSplashImage, "scaleX", 1f, SCALE_END); ObjectAnimator animatorY = ObjectAnimator.ofFloat(mSplashImage, "scaleY", 1f, SCALE_END); - AnimatorSet set = new AnimatorSet(); - set.setDuration(ANIMATION_TIME).play(animatorX).with(animatorY); - set.start(); + mSplashSet = new AnimatorSet(); + mSplashSet.setDuration(ANIMATION_TIME).play(animatorX).with(animatorY); + mSplashSet.start(); - set.addListener(new AnimatorListenerAdapter() + mSplashSet.addListener(new AnimatorListenerAdapter() { @Override @@ -92,6 +95,9 @@ public void onBackPressed() { subscribe.unsubscribe(); } + if (mSplashSet != null) { + mSplashSet.removeAllListeners(); + } } } From 745c96f7426035b9f3b4c7424835a1b3c48ee478 Mon Sep 17 00:00:00 2001 From: George Zuo Date: Sat, 3 Dec 2016 15:43:34 +0800 Subject: [PATCH 2/3] remove wrong import --- .../moequest/module/commonality/AppSplashActivity.java | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java index 6c57bb3..687762f 100644 --- a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java +++ b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/AppSplashActivity.java @@ -7,7 +7,6 @@ import android.app.Activity; import android.content.Intent; import android.os.Bundle; -import android.view.animation.AnimationSet; import android.widget.ImageView; import com.hotbitmapgg.moequest.R; From 72bc749b1097983312dfef6c2fbf45329ee2ac17 Mon Sep 17 00:00:00 2001 From: George Zuo Date: Sat, 3 Dec 2016 16:37:18 +0800 Subject: [PATCH 3/3] close drawer when tap on back button --- .../moequest/module/commonality/MainActivity.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/MainActivity.java b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/MainActivity.java index d7722ca..88f7a53 100644 --- a/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/MainActivity.java +++ b/app/src/main/java/com/hotbitmapgg/moequest/module/commonality/MainActivity.java @@ -8,6 +8,7 @@ import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.widget.Toolbar; +import android.view.Gravity; import android.view.KeyEvent; import android.view.MenuItem; import android.view.View; @@ -198,7 +199,7 @@ public void changIndex(int changNum, String title, MenuItem item) } - public void switchFragment(Fragment fragment) + private void switchFragment(Fragment fragment) { FragmentTransaction trx = getSupportFragmentManager().beginTransaction(); @@ -218,7 +219,12 @@ public boolean onKeyDown(int keyCode, KeyEvent event) if (keyCode == KeyEvent.KEYCODE_BACK) { - logoutApp(); + + if (mNavigationView.isShown()) { + mDrawerLayout.closeDrawer(Gravity.START); + } else { + logoutApp(); + } } return true;