項目實戰:新聞APPday05學習筆記
不否認努力,繼續加油!
學習整理重點、盲區,筆記如下:乾乾巴巴,麻麻賴賴,一點都不圓潤……
day05
內容
1. 新聞瀏覽頁面
-
設置點擊某一條後變灰色,記錄閱讀過的新聞
a. 以數組方式記錄點擊後的id;
對新聞列表 設置點擊某一條的監聽;當某一條 item 被點擊後,取之前保存的,如果數組裏面沒有包含當前的id,就在之前的id數組後邊加上當前的 id ,保存起來並刷新適配器。
b. 在適配器的 getView() 中,如果緩存中的 ID 中存在初始化的這個 item 的 ID 那麼讓其顯示爲灰色;否則設置爲黑色;
-
新聞瀏覽頁面NewsDetailActivity-使用WebView加載網頁
a. 創建新聞詳情頁面NewsDetailActivity數據接收
b. 創建新聞詳情頁面佈局文件
c. 初始化佈局文件;
webView.loadUrl(url);
d. 設置加載效果;監聽頁面加載完成的時候;隱藏 Progerssbar;
e. 設置支持 javaScript 腳本語言
//設置WebView屬性的類 WebSettings setting = webView.getSettings(); //設置支持javaScript setting.setJavaScriptEnabled(true);
f. 設置支持雙擊縮放
//啓用頁面上放大縮小按鈕 setting.setBuiltInZoomControls(true); //啓用頁面雙擊縮放功能 setting.setUseWideViewPort(true); webView.loadUrl(url);
2. WebView字體大小修改
-
點擊修改字體大小,彈出單選對話框;設置默認選中第二條;並在點擊的時候,記錄點擊的位置作爲 temp,
builder.setSingleChoiceItems(items, currentSelectTextSize, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { tempSelectTextSize = which; ……
-
當點擊確定後,再把點擊的位置設置爲文本的字體大小;
webSettings.setTextZoom(100);
3. 頂部輪播圖循環播放
-
自定義 Handler
a. handler 機制;
b. 發送延時消息;消息中將輪播圖切換到下一個頁面;
-
設置輪播圖的觸摸事件
a. 給輪播 圖 添加觸摸事件,當按下時移除 handler 消息;擡起時發送;
b. 存在 BUG:按下後輕微橫滑後,觸摸事件沒有執行 UP,就永遠不會自動了;
c. 解決方法;需要用到 ViewPager 的三種狀態,
onPageScrollStateChanged() 中,如果是拖拽 SCROLL_STATE_DRAGGING 時,就移除消息;如果是空閒 SCROLL_STATE_IDLE (或者慣性滑動 SCROLL_STATE_SETTLING) 並且之前拖拽了(定義isDragging ,當拖拽後,對其賦值爲 true)時,發送消息並將其賦值爲 false;
4. Volley 請求網絡
- Volley:提供簡便的圖片加載工具;適用於數據量小,通信頻繁的網絡操作;
- 在ListView和GridView中請求圖片簡介
5. 組圖頁面數據綁定和頁面切換
- 使用 volley 請求網絡;
- 設置適配器;
- ListView和GridView切換顯示
盲區
- 聲明:本博客根據尚硅谷項目實戰: 北京新聞.學習整理;
其他筆記
新聞APP其他筆記
- day01
第一天的學習筆記: 新聞APP01. - day02
第二天的學習筆記: 新聞APP02. - day03
第三天的學習筆記: 新聞APP03. - day04
第四天的學習筆記: 新聞APP04. - day05
第五天的學習筆記: 新聞APP05. - day06
第六天的學習筆記:新聞APP06. - day07
第七天的學習筆記:新聞APP07.
購物商城APP學習筆記
購物商城APP學習筆記:購物商城