Android實(shí)現(xiàn)閱讀進(jìn)度記憶功能
本文實(shí)例為大家分享了Android控件WebView實(shí)現(xiàn)保存閱讀進(jìn)度的具體代碼,供大家參考,具體內(nèi)容如下
用戶提了一個(gè)要求,要求保存他的閱讀進(jìn)度,然后在他下次閱讀的時(shí)候可以繼續(xù)閱讀,然后動(dòng)手實(shí)現(xiàn)了一下,是這樣的。
我用的控件是WebView
public class WebViewClientEmb extends WebViewClient {
// 在WebView中而不是系統(tǒng)默認(rèn)瀏覽器中顯示頁(yè)面
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
System.out.println("Url---------->"+url);
return true;
}
// 頁(yè)面載入前調(diào)用
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
// 頁(yè)面載入完成后調(diào)用
@Override
public void onPageFinished(WebView webView, String url) {
int position = CacheUtils.getInt(Laws_DetailActivity.this,link, 0);
webView.scrollTo(0, position);//webview加載完成后直接定位到上次訪問的位置
mLoadingDialog.dismiss();
}
}
這中間,link是我的加載網(wǎng)址
@Override
public void onPause() {
super.onPause();
if (webView != null) {
int scrollY = webView.getScrollY();
CacheUtils.putInt(this, link, scrollY);//保存訪問的位置
}
}
最后貼出工具類
public class CacheUtils {
private static final String NAME = "";
private static SharedPreferences sp = null;
// 存Strings
public static void putString(Context context, String key, String value) {
if (sp == null) {
sp = context.getSharedPreferences(NAME,
Context.MODE_PRIVATE);
}
sp.edit().putString(key, value).commit();
}
// 取String
public static String getString(Context context, String key, String defValue) {
if (sp == null) {
sp = context.getSharedPreferences(NAME,
Context.MODE_PRIVATE);
}
return sp.getString(key, defValue);
}
//存Int值
public static void putInt(Context context, String key, int value) {
if (sp == null) {
sp = context.getSharedPreferences(NAME,
Context.MODE_PRIVATE);
}
sp.edit().putInt(key, value).commit();
}
//取int值
public static int getInt(Context context, String key, int defValue) {
if (sp == null) {
sp = context.getSharedPreferences(NAME,
Context.MODE_PRIVATE);
}
return sp.getInt(key, defValue);
}
}
三步就完成了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android WebView如何判定網(wǎng)頁(yè)加載的錯(cuò)誤
- Android webView字體突然變小的原因及解決
- Android 解決WebView多進(jìn)程崩潰的方法
- Android 中 WebView 的基本用法詳解
- 在Android環(huán)境下WebView中攔截所有請(qǐng)求并替換URL示例詳解
- 解決Android webview設(shè)置cookie和cookie丟失的問題
- Android 如何從零開始寫一款書籍閱讀器的示例
- android閱讀器長(zhǎng)按選擇文字功能實(shí)現(xiàn)代碼
- android仿新聞閱讀器菜單彈出效果實(shí)例(附源碼DEMO下載)
- Android實(shí)現(xiàn)閱讀APP平移翻頁(yè)效果
- Android編程實(shí)現(xiàn)小說閱讀器滑動(dòng)效果的方法
- Android使用WebView實(shí)現(xiàn)離線閱讀功能
相關(guān)文章
android中使用Activity實(shí)現(xiàn)監(jiān)聽手指上下左右滑動(dòng)
這篇文章主要介紹了android中使用Activity實(shí)現(xiàn)監(jiān)聽手指上下左右滑動(dòng),本文使用了Activity的ontouchEvent方法監(jiān)聽手指點(diǎn)擊事件,并給出代碼實(shí)例,需要的朋友可以參考下2015-05-05
Android webview加載https鏈接錯(cuò)誤或無(wú)響應(yīng)的解決
這篇文章主要介紹了Android webview加載https鏈接錯(cuò)誤或無(wú)響應(yīng)的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2020-03-03
ionic App 解決android端在真機(jī)上tab處于頂部的問題
這篇文章主要介紹了ionic App 解決android端在真機(jī)上tab處于頂部的問題的相關(guān)資料,需要的朋友可以參考下2017-06-06
Android Handler runWithScissors 梳理流程解析
這篇文章主要為大家介紹了Android Handler runWithScissors 梳理流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
Android開發(fā)之多媒體文件獲取工具類實(shí)例【音頻,視頻,圖片等】
這篇文章主要介紹了Android開發(fā)之多媒體文件獲取工具類,結(jié)合實(shí)例形式分析了Android獲取音頻,視頻及圖片等多媒體資源的相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
Android Studio 3.6中使用視圖綁定替代 findViewById的方法
從 Android Studio 3.6 開始,視圖綁定能夠通過生成綁定對(duì)象來(lái)替代 findViewById,從而可以幫您簡(jiǎn)化代碼、移除 bug,并且從 findViewById 的模版代碼中解脫出來(lái),今天通過本文給大家介紹使用視圖綁定替代 findViewById的方法,感興趣的朋友一起看看吧2020-03-03
Android實(shí)現(xiàn)搖一搖簡(jiǎn)單功能
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)搖一搖簡(jiǎn)單功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03

