1. 程式人生 > >六月上團隊項目心得

六月上團隊項目心得

RR 執行 ati 問題: 有一點 layout dia 哪些 想法

六月上團隊項目心得

這半個月來,我主要做了三件事:

1、與數據庫進行對接。

2、與UI進行對接。

3、完善搜索功能和搜索框UI,以及修復各種各樣的小bug。


PART1 與數據庫對接

我們和數據庫對接就和結對項目UI和core組對接很像。數據庫方提供了接口函數以及必要的使用說明,我們在相應的位置調用這些函數,就能把數據存儲下來。在每次重新打開app的時候(執行onCreate函數),重新從數據庫裏獲取再顯示出來。

第一次與數據庫嘗試對接時我就遇到了一些問題。這是當時記錄問題(感受)的一篇博客:UI第二組與數據庫對接時遇到的問題記錄。其中提到的list刪除的問題實際上就是我自己java代碼用for循環來刪除寫的有問題,不是數據庫的問題。

經過第一次的對接後,後面也比較順利。目前實現的是在timeline界面和搜索結果界面是調用數據庫來獲取結果,而點擊timeline和搜索結果的item還是采用的intent來傳遞參數實現顯示內容。


PART2 與UI進行對接

與數據庫對接的話大部分情況還能線上交流就好了,但是兩個UI進行對接如果不線下交流的話,對接效果肯定不佳。這次對接不僅是把幾個單獨的界面用intent聯系起來,而是將部分界面合起來。

以下摘自當時寫的一篇博客記錄(我寫的一部分):

   “ 之前編輯界面和日記詳情界面分在了兩個UI組進行,考慮到用戶體驗以及富文本的展示,我們決定合為一個Activity,通過按鈕、toolbar等的隱藏以及edittext能否編輯的設置來完成編輯和日記詳情展示功能。

主要的對接工作:

(1)將布局合二為一。

遇到的問題有部分被toolbar遮擋、下方按鈕位置不對等,主要在relativelayout和CoordinatorLayout的一些細節問題上,問題已解決。

(2)將活動代碼合二為一。

因為編輯界面代碼更復雜,主要是將日記詳情界面的代碼移入編輯界面代碼,並做相應的修改。包括不同情況進入編輯界面的判斷等等。

(3)修改其他活動的代碼。

如intent傳遞的參數等,不同界面進入傳遞的參數不同。目前有三個界面進入:timeline的item,新建日記按鈕、搜索結果界面進入,每種情況傳入的參數都不一樣。這些細節上也有很多問題,這裏也不贅述。

修正的其他問題:

(1)日記詳情界面菜單上的刪除能用了。

(2)前一篇、後一篇日記的情況修復,之前的原因在於新建了一個diarylist然後再用index.of ()去找index,這樣返回結果只能是-1。現在采用使用intent傳入index,搜索結果界面進入時還要用bundle傳入一個arraylist。

(3)搜索界面將獲取當前時間的方法由calendar改為date,calendar 要求手機API版本24以上,對部分手機不友好,會造成閃退現象。”

編輯、展示界面合二為一後,最基本的寫日記功能實際上也就算實現了。現在主要是的問題是數據庫那邊目前對內容只是存string類型,這樣編輯界面富文本的效果無法保存,所以即使編輯時設置了字體顏色什麽的,重新打開也只是純文字。


PART3 完善搜索功能和搜索框UI等

首先就是改搜索框的UI,之前就是用他默認的效果,其實這樣顯示在toolbar上並不是特別美觀,特別是是我照著教程也沒法按著我的想法去改那個searchview和navigationicon的距離。。我就決定將搜索框改為白色圓角矩形為背景的那種。在改這個時候,又遇到了問題。就是他默認的圖標顏色以及字體顏色全部都是白色,一般更改他們有兩種方法,一是在xml裏改,這種貌似叫靜態設置,另一組就是在代碼進行動態設置。網上雖然有很多教程,但是我不得不說,網上有些教程真的是坑,我很多時間就是浪費在了他們上面。但其實很多教程大部分是沒問題的,就是有一些小問題有錯,我也不知道是不是版本的問題。

在對這些控件進行設置的過程中,我也有一點心得,就是有時與其去找各種教程,不如直接在android studio裏去看這個控件的類裏面有哪些變量、有哪些方法。很多都是互通的。比如我找的教程只有對seachview的字體顏色進行設置,但其實我要修改圖標原理也都是一樣的。只不過findviewbyid的參數不一樣。之前也看了一些教程的教程,就是教為什麽應該這麽做,教程裏說的也是去一層層看布局的父布局,去找究竟是哪一句話導致了目前的效果。

再說搜索功能上,目前增加了限制時間範圍的搜索,也修改了搜索的一些問題。遇到的一個比較大的bug就是搜素結果界面點進去後上下篇日記會出錯,原因在於我使用的list還是包含所有日記的list,實際上應該使用指包含搜索結果的這個list。


小小的總結

說是半個月的工作其實最近幾天都沒怎麽工作,畢竟要考試了。我們現在的東西怎麽說呢,能實現寫日記寫瓶子倒是可以,但是離我們最初的最核心的設想還是差了一些,等這一陣子過了大家都有時間了,應該就能做的更好。

六月上團隊項目心得