Commit d56bc607611c4b573f2c233cddbe5e643beccab8

Authored by 韩亚云
1 parent 416cacce

全屏预览启动退出动画优化

app/strike/src/main/java/com/cnlive/strike/imgutil/ImgActivity.java
... ... @@ -140,7 +140,7 @@ public class ImgActivity extends AppCompatActivity {
140 140  
141 141  
142 142 data.setShowImg(URL1);
143   - iv_test1.setOnClickListener(view -> PreviewImageViewActivity.startPreviewPictrue(this, view, data));
  143 +// iv_test1.setOnClickListener(view -> PreviewImageViewActivity.startPreviewPictrue(this, view, data));
144 144  
145 145 // LoadImage.with(this)
146 146 // .url(URL1)
... ...
core/base/src/main/res/anim/preview_fade_in.xml 0 → 100644
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +
  3 +<alpha xmlns:android="http://schemas.android.com/apk/res/android"
  4 + android:duration="@android:integer/config_longAnimTime"
  5 + android:fromAlpha="0.0"
  6 + android:interpolator="@android:anim/decelerate_interpolator"
  7 + android:toAlpha="1.0" />
0 8 \ No newline at end of file
... ...
core/imageload/src/main/AndroidManifest.xml
... ... @@ -3,7 +3,11 @@
3 3 package="com.cnlive.core.imageload">
4 4  
5 5 <application>
6   - <activity android:name="com.cnlive.core.activity.PreviewImageActivity"></activity>
  6 + <activity android:name="com.cnlive.core.activity.PreviewImageActivity"
  7 + android:configChanges="keyboardHidden|screenSize|smallestScreenSize|screenLayout|orientation"
  8 + android:launchMode="singleTop"
  9 + android:theme="@style/PreviewTheme"/>
  10 +
7 11 <activity
8 12 android:name=".preview.PreviewImageViewActivity"
9 13 android:configChanges="keyboardHidden|screenSize|smallestScreenSize|screenLayout|orientation"
... ...
core/imageload/src/main/java/com/cnlive/core/activity/PreviewImageActivity.java
... ... @@ -6,11 +6,11 @@ import com.alibaba.android.arouter.facade.annotation.Route;
6 6 import com.cnlive.core.imageload.R;
7 7 import com.cnlive.core.imagepreview.ImagePreView;
8 8 import com.cnlive.core.imagepreview.PhotoLoader;
  9 +import com.cnlive.core.imagepreview.ViewerStatus;
9 10 import com.cnlive.core.imagepreview.listener.OnItemClickListener;
10 11 import com.cnlive.core.libs.base.frame.activity.BaseActivity;
11 12  
12 13 import java.util.ArrayList;
13   -import java.util.Arrays;
14 14 import java.util.List;
15 15  
16 16 @Route(path = "/preview/PreviewImageActivity")
... ... @@ -28,15 +28,11 @@ public class PreviewImageActivity extends BaseActivity {
28 28 @Override
29 29 protected void initView() {
30 30 preView = findViewById(R.id.image_pre);
31   - //设置为黑色预览
32   - setStatusBarColor(R.color.black,0);
33   -
34 31 list = getIntent().getStringArrayListExtra("paths");
35 32  
36   -
37   -// list.add("https://b-ssl.duitang.com/uploads/item/201706/30/20170630181644_j4mh5.jpeg");
38 33 preView.overlayStatusBar(false)
39 34 .imageData(list)
  35 + .playExitAnim(false)
40 36 .imageLoader(new PhotoLoader());
41 37  
42 38 preView.watch(0);
... ... @@ -44,10 +40,25 @@ public class PreviewImageActivity extends BaseActivity {
44 40 @Override
45 41 public boolean onItemClick(int position, ImageView imageView) {
46 42 finish();
47   - return false;
  43 + overridePendingTransition(R.anim.preview_fade_in, R.anim.preview_fade_out);
  44 + return true;
48 45 }
49 46 });
  47 + }
50 48  
51   -// preView.getCurrentItem().getImageView().setOnClickListener(view -> finish());
  49 + @Override
  50 + public void onBackPressed() {
  51 + if(!isFinishing()) {
  52 + finish();
  53 + overridePendingTransition(R.anim.preview_fade_in, R.anim.preview_fade_out);
  54 + }
  55 + }
  56 +
  57 + @Override
  58 + protected void onDestroy() {
  59 + super.onDestroy();
  60 + if(preView != null && preView.getViewStatus() == ViewerStatus.STATUS_WATCHING){
  61 + preView.cancel();
  62 + }
52 63 }
53 64 }
... ...
core/imageload/src/main/res/values/style.xml
... ... @@ -39,4 +39,16 @@
39 39 <item name="android:windowCloseOnTouchOutside">false</item>
40 40 </style>
41 41  
  42 +
  43 + <style name="ActivityInOutAnimation" parent="android:style/Animation.Activity">
  44 + <item name="android:activityOpenEnterAnimation">@anim/preview_fade_in</item>
  45 + <item name="android:activityCloseExitAnimation">@anim/preview_fade_out</item>
  46 + </style>
  47 +
  48 + <style name="PreviewTheme" parent="Theme.AppCompat.NoActionBar">
  49 + <item name="android:windowActionBar">false</item>
  50 + <item name="android:windowNoTitle">true</item>
  51 + <item name="android:windowIsTranslucent">true</item>
  52 + <item name="android:windowAnimationStyle">@style/ActivityInOutAnimation</item>
  53 + </style>
42 54 </resources>
43 55 \ No newline at end of file
... ...