軟工大做業·歷物語(一)

文章來源:中國軟工亞洲指揮中心(Steins;Gate)
共同做者:紀神,爵爺,老闆,小男孩(按首字拼音排序)
責任編輯:爵爺android

    終於開始了正式的開發工做。鑑於團隊以前多少有點開發經驗,不少界面寫起來並無什麼阻滯,但因爲咱們都沒有深刻系統學習過Android架構和API,因此在有些細節上老是會有不到位的地方。git

    就拿筆者來講,雖然能照葫蘆畫瓢實現指定的界面和效果,可是總會在一些細微的地方卡住。如經過ViewPager實現SwipeView的解決方案中,ViewPager會時刻保留兩個Fragment的View(此處存疑,只是實際操做的狀況,並無查閱過源碼),其餘的Fragment的view會被destroy掉。被destroyView的Fragment全部的控件都被「下架」,可是實例會被保留,那麼對於EditText和RadioButton之類的控件而言,其內容是不會被保存的,除非單獨設置變量保存或者放在savedInstanceState中。筆者在這裏就卡了好久,又複習了一遍Activity和Fragment的生命週期,而且簡單查看了一下ViewPager的源碼,才解決了相關的問題。github

    在實現新聞列表的時候,因爲須要上拂加載更多的效果,考慮現有開源方案太過龐大,因此筆者就手寫了一個實現。由於新API強迫症,使用了RecyclerView而不是ListView。RecyclerView效率更高,功能更強大,操做也更靈活,可是少了諸多限制也就少了一些方便。如RecyclerView沒有OnItemClickListener,筆者就往Adapter裏扔了個回調,監聽每一個條目的點擊事件。又如RecyclerView沒有默認分隔線,這是能夠理解的,由於要同時實現ListView、GridView以及瀑布流的效果。關於添加分割線的方案,鴻洋大大給出了一篇很是精彩的博文Android RecyclerView 使用徹底解析 體驗藝術般的控件,可是因爲代碼仍是過多,因此筆者本身用代碼模擬.9圖片實現了分隔線效果,就過程而言要簡潔的多(固然功能不夠強大,具體見Android使用RecyclerView分隔線問題)。算法

    相似的問題還有不少,雖然都不算是大坑,可是有些地方仍是挺絆腳的。如今儘可能剋制不去過於關注細節,先把大框架作出來,再進行優化工做。數據庫

    貼出下一週的任務安排:微信

  • 爵爺:
    • ①完善登陸界面、註冊界面、新聞詳情界面
    • ②添加第一主界面新聞篩選機制(在新聞分類完成基礎上)
    • ③設計用戶偏好計算算法(初步測試)
  • 紀神:
    • ①和小男孩討論出新聞的種類,並制定從爬蟲正式入庫的方案
    • ②完善好友界面,實現效果應與微信好友類似,尤爲是右側的A-Z導航(在https://github.com/Trinea/android-open-project找開源方案)
    • ③完成好友詳情界面,實現效果應與微信好友詳情相似,完成好友申請處理界面(微信收到好友申請後好友界面頂端的效果)
  • 小男孩:
    • ①和紀神討論出新聞的種類,並制定從爬蟲正式入庫的方案
    • ②完善第四主界面
    • ③完成修改用戶信息的功能(修改的信息項根據數據庫設計來,界面效果按照微信來。其中地區修改先不用作,我以前作過相似的東西,有完整的地區庫)
  • 老闆:架構

    • ①完成第三主界面
    • ②繼續爬取其餘學院的新聞
    • ③把爬取的信息按照{紀神和小男孩的方案}正式入庫
相關文章
相關標籤/搜索