Skip to content

Commit 125ef15

Browse files
committed
0.46版本,新增加载和结束的监听
1 parent ae7fa50 commit 125ef15

File tree

2 files changed

+55
-5
lines changed

2 files changed

+55
-5
lines changed

README.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,18 @@ PhotoViewer
9090

9191
## 更新日志
9292

93+
### 0.46
94+
95+
增加PhotoViewer加载和结束的监听接口
96+
```Kotlin
97+
.setOnPhotoViewerCreatedListener(object : PhotoViewer.OnPhotoViewerCreatedListener{
98+
override fun onCreated() {
99+
}
100+
101+
})
102+
103+
```
104+
93105
### 0.45
94106

95107
更改依赖方式为compileOnly

photoviewer/src/main/java/com/wanglu/photoviewerlibrary/PhotoViewer.kt

Lines changed: 43 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,33 @@ import android.animation.LayoutTransition
44
import android.animation.ObjectAnimator
55
import android.annotation.SuppressLint
66
import android.app.Fragment
7+
import android.content.pm.ActivityInfo
78
import android.graphics.Color
9+
import android.os.Build
810
import android.os.Bundle
911
import android.support.v4.view.ViewPager
1012
import android.support.v7.app.AppCompatActivity
1113
import android.support.v7.widget.GridLayoutManager
1214
import android.support.v7.widget.LinearLayoutManager
1315
import android.support.v7.widget.RecyclerView
14-
import android.view.Gravity
15-
import android.view.LayoutInflater
16-
import android.view.View
17-
import android.view.ViewGroup
16+
import android.view.*
1817
import android.widget.*
1918
import java.lang.ref.WeakReference
2019
import java.util.*
2120
import kotlin.concurrent.timerTask
21+
import android.view.View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
22+
import android.view.View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
23+
import android.view.View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
24+
import android.view.View.SYSTEM_UI_FLAG_LAYOUT_STABLE
25+
import android.view.View.SYSTEM_UI_FLAG_FULLSCREEN
26+
import android.view.View.SYSTEM_UI_FLAG_LOW_PROFILE
27+
import android.view.View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
28+
import android.view.View.SYSTEM_UI_FLAG_LAYOUT_STABLE
29+
import android.view.View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
30+
31+
32+
33+
2234

2335

2436
@SuppressLint("StaticFieldLeak")
@@ -32,6 +44,8 @@ object PhotoViewer {
3244

3345

3446
internal var mInterface: ShowImageViewInterface? = null
47+
private var mCreatedInterface: OnPhotoViewerCreatedListener? = null
48+
private var mDestroyInterface: OnPhotoViewerDestroyListener? = null
3549

3650
private lateinit var imgData: ArrayList<String> // 图片数据
3751
private lateinit var container: WeakReference<ViewGroup> // 存放图片的容器, ListView/GridView/RecyclerView
@@ -42,6 +56,23 @@ object PhotoViewer {
4256

4357
private var indicatorType = INDICATOR_TYPE_DOT // 默认type为小圆点
4458

59+
interface OnPhotoViewerCreatedListener{
60+
fun onCreated()
61+
}
62+
63+
64+
interface OnPhotoViewerDestroyListener{
65+
fun onDestroy()
66+
}
67+
68+
fun setOnPhotoViewerCreatedListener(l: OnPhotoViewerCreatedListener): PhotoViewer{
69+
mCreatedInterface = l
70+
return this
71+
}
72+
fun setOnPhotoViewerDestroyListener(l : OnPhotoViewerDestroyListener): PhotoViewer{
73+
mDestroyInterface = l
74+
return this
75+
}
4576

4677
/**
4778
* 小圆点的drawable
@@ -206,7 +237,6 @@ object PhotoViewer {
206237
var tv: TextView? = null
207238

208239

209-
210240
for (i in 0 until imgData.size) {
211241
val f = PhotoViewerFragment()
212242
f.exitListener = object : PhotoViewerFragment.OnExitListener {
@@ -217,6 +247,11 @@ object PhotoViewer {
217247
frameLayout.removeAllViews()
218248
decorView.removeView(frameLayout)
219249
fragments.clear()
250+
251+
252+
if(mDestroyInterface != null){
253+
mDestroyInterface!!.onDestroy()
254+
}
220255
}
221256
}
222257

@@ -379,6 +414,9 @@ object PhotoViewer {
379414
}
380415
decorView.addView(frameLayout, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)
381416

417+
if(mCreatedInterface != null){
418+
mCreatedInterface!!.onCreated()
419+
}
382420
}
383421

384422

0 commit comments

Comments
 (0)