新年又一力做-搜傑新聞

前言

很久不更,近一個月各類事情紛紛擾擾,不過學習從未中止過,年前花了些時間篩選了上海的一些公司,近期稍做準備,準備去上海工做,體驗一線城市的IT氛圍,得到技術和人生的提高。Fighting!android

下面談談新提交項目-搜傑新聞(SoldierNews)。git

搜傑新聞客戶端獲取的是界面新聞的數據,只作了科技和娛樂版塊。github

一.具有功能

  • 科技新聞
  • 娛樂新聞
  • 清除緩存
  • 用戶註冊與登陸

二.簡單介紹

1.Material Design設計風格,Google原生控件,baas服務Bmob,給App加入了用戶系統。緩存

2.依賴庫包括:框架

解析網頁數據:Jsoup佈局

輕量級的緩存框架:ASimpleCache學習

圖片加載框架:universal-image-loader測試

非官方Android Volley庫:android-volley動畫

無限循環滑動的 ViewPager :InfiniteViewPager設計

三.要點說起

1.Toolbar+DrawerLayout

2.主要內容RecyclerView

  • 主要內容顯示用的是RecyclerView,需導入v7包下的recyclerview。
  • RecyclerView能夠經過設置LayoutManager來快速實現listview、gridview和瀑布流的效果,官方自帶了動畫效果。
  • 在RecyclerView中標準化了ViewHolder,須要繼承 RecyclerView.ViewHolder。
  • RecyclerView沒有提供點擊監聽,須要在自定義Adapter中本身實現。在Adapter中,加載佈局用到的CardView,是Google官方實現的卡片式的庫,每個item外面都套着一個卡片,使佈局清晰美觀。

3.加載數據

  • 加載數據主要用了Jsoup解析,此爲該客戶端的核心所在,Jsoup解析能夠解析網頁代碼,提取想要的數據。學習使用Jsoup-Jsoup Cookbook(中文版)
  • 加載數據採用回調的方式,把Volley獲取的網頁源代碼傳到NewsBiz中解析,這樣能夠自定義解析成功或失敗後的處理。
  • Jsoup解析的select()方法挺好用的,可是也要一點點測試,多是使用不熟練,解析出我要的數據仍是頗費些時間的。需注意的是,每一條數據要找到外層嵌套標籤的類,而後獲取其中的數據,且要用for循環,new對象要在for循環內,保證數據添加到同一對象內。
  • 加載圖片用到了universal-image-loader

4.清除緩存與用戶註冊登陸

  • 經過ASimpleCache對數據進行緩存,清除緩存的操做引入了別人寫的一些類。

  • 用戶的註冊登陸使用了Bmob,實現起來很是簡單。

5.當前初步提交,仍有好些功能須要繼續完善,僅做學習用。另外,值得注意的是,使用Jsoup解析,別人官方更改代碼,也要隨之更改。

四.項目地址

My GitHub : https://github.com/Iamasoldier6/SoldierNews/-搜傑新聞(SoldierNews)。

Welcome to star and fork it!

相關文章
相關標籤/搜索