標籤:
一. 項目問題
1. Banner自動滾動,當Banner不可見時,多次切換Fragment,FC 原因:系統組件之間的衝突規避:1) 當Banner可見時自動滾動 2) 當Banner不可見時停止自動滾動 消極式載入LazyLoad參考ApiDemo中的List13.java解決步驟:1) 監聽ListView的滾動事件 2) 非手動,並且可見才自動滾動ww.23code.com 2. 布局事件穿透情境:當使用FrameLayout或層疊布局時,上層布局中如果某處沒有控制項, 使用者點擊事件會透傳到下層解決: 二. 項目功能1. 收藏(瀏覽曆史)分析1) 收藏:詳情頁菜單2) 查看:收藏片段中3) 取消:詳情頁菜單設計資料持久化1) InternalStorage /data/data/packagename/files2) ExternalStorage SDCard /mnt/sdcard/ 情境:檔案較大 遊戲資料包 圖片緩衝3) SharePreferences /data/data/packagename/share_prefs 情境:較小、索引值對形式 使用者佈建
4) SQLite /data/data/packagename/databases 情境:資料量較大、資料結構類似,頻繁增/刪/改/查 連絡人、簡訊、圖片、音頻、視頻5) Web URL 情境:使用者在任何裝置上都可以查看 分類:1) 服務端2) 用戶端 複習:SQLite使用步驟1) 繼承SQLiteOpenHelper2) 建立Helper , helper.getWritableDatabase()3) db.execSQL(sql) db.rawQuery() 關係型資料庫物件導向4) ORM 對象關係映射
db.insert()
db.delete() db.update() db.query() 2. ORM架構 Ormlite GreenDao ActiveAndroid 3. ActiveAndroid庫的使用步驟:1) 建立Application,初始化ActiveAndroid 2) 建立一個類,繼承Model,設定與資料庫表名和列名的映射3) 通過save()方法儲存資料4. ActiveAndroid更多方法1) 刪除2) 查3) 修改4) 批量插入 5) 設定資料庫的檔案名稱和版本號碼 所有的IO操作都是耗時的 5. 收藏功能1) 編寫資料庫操作工具類2) 在詳情頁菜單點擊事件中調用3) 從列表Fragment傳遞Story對象到詳情頁 6. 移除最愛1) 在DBManager中增加刪除收藏資料庫的方法2) 增加判斷某條資料在資料庫中是否存在的方法3) 增加一個切換收藏狀態的方法4) 在詳情頁面調用 7. 使用同一個對象反覆插入刪除的問題 現象:第二次之後插入資料失敗 原因:ActiveAndroid不支援同一個對象多次插入 解決:使用複製對象 重寫Story類的clone()方法 常見問題1. 使用ActiveAndroid,建立Model時沒有添加無參數的構造方法 constructor:構造方法 心得體會: 安卓的開發學習已經有3個多月了,從中已經學到了很多,也有很多的不懂,今天主要是用到了資料庫,資料庫也是之前所學到SQLite,要對資料庫的增刪改查要比較的熟悉,資料的持久化的常用的幾種。不管是在那個項目都需要用到資料庫,之前我所做的QQ音樂播放器,同樣需要資料庫對資料的儲存還有修改。今天所需要的是知乎日報中收藏需要對資料的持久化。移除最愛是對資料進行刪除,在刪除的時候會遇到一個常見的問題就是,如果沒有資料的話你進行刪除會出現項目的運行錯誤。現在在進階階段感覺每天所學到的東西真的每天都比一天多。需要對每天的知識點進行消化,積累多了兩天就很多知識點就無法消化了。安卓的學習是無止境的很多的是需要堅持積累。
Android知乎日報開發