iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0
Mobile Development

如何開發適合電子書閱讀器使用的瀏覽器 Android APP系列 第 4

電子書閱讀器上的瀏覽器 [Day04] 以翻頁的方式瀏覽網頁

在 FOSS Browser (以後簡稱 browser) 中已經有支援簡單的手勢操作,讓使用者可以設定向上向下滑動工具列的網頁標題時,會執行什麼功能,其中包含了 Scroll to top 和 Scroll to bottom 的選項。

手勢列表 功能列表
https://ithelp.ithome.com.tw/upload/images/20210901/20140260VPGfSmuZ9K.png https://ithelp.ithome.com.tw/upload/images/20210901/201402607rOnsly32G.png

這裡是利用 Android 原生的 WebView 提供的 pageUp(true) 和 pageDown(true) ,滑順地捲動畫面到最上面或最下面 https://developer.android.com/reference/android/webkit/WebView#pageDown(boolean)
在這邊,我們要把它改成是用來翻頁的功能,而且希望可以把它改成一次翻到位,讓畫面往上或往下位移一定的高度,不再有捲動效果。

這功能的實作很容易,需要先在 NinjaWebView.java 中建一個 function:

https://ithelp.ithome.com.tw/upload/images/20210901/201402607ZsdcDjzpH.png

getScrollY() 是目前 Y 的位置,後面則是再加上畫面高度的 2/3 。利用 scrollTo 的話,就不會有捲動的效果。然後,在 BrowserActivity 中設定手勢的地方(1163行),把原本的 pageDown(true) 換掉。

https://ithelp.ithome.com.tw/upload/images/20210901/20140260Yl4wnp2voF.png

下面是功能示範的影片

Yes

參考原始碼版本

這樣子我們第一個功能就完成啦。下一篇我們來談談怎麼提高圖案的對比度。


上一篇
電子書閱讀器上的瀏覽器 [Day03] 站在巨人的肩膀上,找到對的起跑點
下一篇
電子書閱讀器上的瀏覽器 [Day05] 提高圖案對比度
系列文
如何開發適合電子書閱讀器使用的瀏覽器 Android APP30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言