diff --git a/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
index 677aac7..ad3ffa3 100644
--- a/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
+++ b/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
@@ -22,13 +22,38 @@
private val screenWidth by lazy { getScreenWidth() }
private val screenHeight by lazy { getScreenHeight() }
+ //PDF默认缩放比例
+ private var scale = 1f
+
+ //PDF默认页
+ private var offset = 0
+
+ //最大页码
+ private var maxPages = 0
+
override fun initEvent() {
binding.topMoveButton.setOnClickListener {
- binding.pdfView.moveRelativeTo(screenWidth / 2f, screenHeight / 6f)
+ binding.pdfView.moveRelativeTo(screenWidth / 2f, screenHeight / 5f)
+ }
+
+ binding.lastPageButton.setOnClickListener {
+ offset--
+ if (offset <= 0) {
+ offset = 0
+ }
+ binding.pdfView.jumpTo(offset, true)
+ }
+
+ binding.nextPageButton.setOnClickListener {
+ offset++
+ if (offset >= maxPages) {
+ offset = maxPages
+ }
+ binding.pdfView.jumpTo(offset, true)
}
binding.bottomMoveButton.setOnClickListener {
- binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 6f)
+ binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 5f)
}
}
@@ -50,7 +75,9 @@
override fun onDownloadEnd(file: File) {
LoadingDialogHub.dismiss()
val inputStream = FileInputStream(file)
- binding.pdfView.fromStream(inputStream).load()
+ binding.pdfView.fromStream(inputStream)
+ .onLoad { nbPages -> maxPages = nbPages }
+ .load()
}
override fun onFailure(throwable: Throwable) {
@@ -61,8 +88,6 @@
Log.d(kTag, "initOnCreate: [$screenWidth, $screenHeight]")
}
- private var scale = 1f
-
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
when (keyCode) {
22 -> {
diff --git a/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
index 677aac7..ad3ffa3 100644
--- a/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
+++ b/app/src/main/java/com/casic/br/ar/app/view/PreviewPdfActivity.kt
@@ -22,13 +22,38 @@
private val screenWidth by lazy { getScreenWidth() }
private val screenHeight by lazy { getScreenHeight() }
+ //PDF默认缩放比例
+ private var scale = 1f
+
+ //PDF默认页
+ private var offset = 0
+
+ //最大页码
+ private var maxPages = 0
+
override fun initEvent() {
binding.topMoveButton.setOnClickListener {
- binding.pdfView.moveRelativeTo(screenWidth / 2f, screenHeight / 6f)
+ binding.pdfView.moveRelativeTo(screenWidth / 2f, screenHeight / 5f)
+ }
+
+ binding.lastPageButton.setOnClickListener {
+ offset--
+ if (offset <= 0) {
+ offset = 0
+ }
+ binding.pdfView.jumpTo(offset, true)
+ }
+
+ binding.nextPageButton.setOnClickListener {
+ offset++
+ if (offset >= maxPages) {
+ offset = maxPages
+ }
+ binding.pdfView.jumpTo(offset, true)
}
binding.bottomMoveButton.setOnClickListener {
- binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 6f)
+ binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 5f)
}
}
@@ -50,7 +75,9 @@
override fun onDownloadEnd(file: File) {
LoadingDialogHub.dismiss()
val inputStream = FileInputStream(file)
- binding.pdfView.fromStream(inputStream).load()
+ binding.pdfView.fromStream(inputStream)
+ .onLoad { nbPages -> maxPages = nbPages }
+ .load()
}
override fun onFailure(throwable: Throwable) {
@@ -61,8 +88,6 @@
Log.d(kTag, "initOnCreate: [$screenWidth, $screenHeight]")
}
- private var scale = 1f
-
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
when (keyCode) {
22 -> {
diff --git a/app/src/main/res/drawable/ic_move_page.xml b/app/src/main/res/drawable/ic_move_page.xml
index e190b84..d39c0a8 100644
--- a/app/src/main/res/drawable/ic_move_page.xml
+++ b/app/src/main/res/drawable/ic_move_page.xml
@@ -4,7 +4,7 @@
android:viewportWidth="1024"
android:viewportHeight="1024">
= maxPages) {
+ offset = maxPages
+ }
+ binding.pdfView.jumpTo(offset, true)
}
binding.bottomMoveButton.setOnClickListener {
- binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 6f)
+ binding.pdfView.moveRelativeTo(screenWidth / 2f, -screenHeight / 5f)
}
}
@@ -50,7 +75,9 @@
override fun onDownloadEnd(file: File) {
LoadingDialogHub.dismiss()
val inputStream = FileInputStream(file)
- binding.pdfView.fromStream(inputStream).load()
+ binding.pdfView.fromStream(inputStream)
+ .onLoad { nbPages -> maxPages = nbPages }
+ .load()
}
override fun onFailure(throwable: Throwable) {
@@ -61,8 +88,6 @@
Log.d(kTag, "initOnCreate: [$screenWidth, $screenHeight]")
}
- private var scale = 1f
-
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
when (keyCode) {
22 -> {
diff --git a/app/src/main/res/drawable/ic_move_page.xml b/app/src/main/res/drawable/ic_move_page.xml
index e190b84..d39c0a8 100644
--- a/app/src/main/res/drawable/ic_move_page.xml
+++ b/app/src/main/res/drawable/ic_move_page.xml
@@ -4,7 +4,7 @@
android:viewportWidth="1024"
android:viewportHeight="1024">
+ android:gravity="center_horizontal"
+ android:orientation="vertical">
+
+
+
+