安卓期末大作業(yè)——單詞本APP(源碼+任務(wù)書(shū))
計(jì)算機(jī)學(xué)院
項(xiàng) 目 報(bào) 告
2020 - 2021 學(xué)年 第 2 學(xué)期
課程名稱(chēng):?Android移動(dòng)開(kāi)發(fā)技術(shù)
項(xiàng)目名稱(chēng): 單詞本
學(xué)生姓名:
小組成員:
2021年 6 月
題目:?jiǎn)卧~本APP
1需求分析與系統(tǒng)設(shè)計(jì)
項(xiàng)目介紹
此項(xiàng)目是一個(gè)幫助記憶單詞的單詞本,用戶(hù)輸入要記憶的單詞,系統(tǒng)會(huì)自動(dòng)保存到sqllte數(shù)據(jù)庫(kù)中,用戶(hù)可以自行設(shè)置界面風(fēng)格。設(shè)置單詞記憶順序等,可以查找單詞,刪除單詞,以及隱藏中文??梢詭椭脩?hù)更好的記憶單詞。
功能需求
單詞本可以通過(guò)用戶(hù)輸入中英文,來(lái)實(shí)現(xiàn)單詞的添加。
用戶(hù)可以隨意開(kāi)關(guān)某個(gè)單詞的中文釋義
用戶(hù)可以刪除已經(jīng)添加的單詞
用戶(hù)關(guān)機(jī)或者退出應(yīng)用不會(huì)導(dǎo)致單詞本內(nèi)的單詞丟失
用戶(hù)可以自定義單詞本中單詞的順序
可以選擇自己喜歡的界面風(fēng)格
用戶(hù)可以快捷的查找某個(gè)單詞在有道上的詳細(xì)信息
用戶(hù)可以查找某個(gè)單詞
功能需求及示意圖
用戶(hù)點(diǎn)擊加號(hào)按鈕輸入單詞,鍵盤(pán)會(huì)自動(dòng)彈出并焦點(diǎn)在輸入框,用戶(hù)輸入英文和中文釋義,單詞本上將在最上面顯示這個(gè)單詞,并會(huì)有下拉動(dòng)畫(huà)。用戶(hù)可以通過(guò)上方放回箭頭取消輸入。



用戶(hù)可以通過(guò)單詞盤(pán)邊的按鈕來(lái)關(guān)閉或開(kāi)啟中文意思

向右滑可以刪除單詞,同時(shí)底部有提示信息,可以撤銷(xiāo)刪除,點(diǎn)擊撤銷(xiāo)可以還原被刪除的單詞



長(zhǎng)按拖住上下滑動(dòng)可以設(shè)置單詞的優(yōu)先級(jí)


搜索可以搜索相關(guān)的單詞

注:由于時(shí)間倉(cāng)促,該部分的示意圖以截圖的形式替代。
1.4本程序需解決的有關(guān)技術(shù)問(wèn)題
1. CardView 和 constraintLayout的布局切換
2.通過(guò)繼承asyncTask實(shí)現(xiàn)多線(xiàn)程查詢(xún)數(shù)據(jù)庫(kù)
3.查詢(xún)數(shù)據(jù)庫(kù)過(guò)程中多個(gè)類(lèi)的調(diào)用和封裝解耦,模塊化開(kāi)發(fā)
4.通過(guò)livedate監(jiān)聽(tīng)數(shù)據(jù)變化來(lái)改變視圖顯示。
5.如何通過(guò)滑動(dòng)刪除單詞和如何改變單詞位置
6.各個(gè)framgement之間的切換導(dǎo)航
1.5程序流程
程序啟動(dòng)后先通過(guò)MainActivity的onCreate方法
進(jìn)入wordsFramgment類(lèi),通過(guò)MyAdaper new出單詞列表
當(dāng)通過(guò)監(jiān)聽(tīng)WordViewModel發(fā)現(xiàn)數(shù)據(jù)發(fā)生改變時(shí),會(huì)同時(shí)增刪改單詞列表?xiàng)l數(shù)
對(duì)數(shù)據(jù)改變的方法通過(guò)WordViewModel類(lèi)中的方法調(diào)用WordReposity中的方法再調(diào)用WordDatabase或WordDao中的方法進(jìn)行增刪改或者查詢(xún)
5.通過(guò)Word 建立數(shù)據(jù)庫(kù)表和映射關(guān)系。
2系統(tǒng)實(shí)現(xiàn)
2.1類(lèi)分析與設(shè)計(jì)
(1)Word類(lèi):
1.這個(gè)這個(gè)類(lèi)定義了單詞條目的屬性:id word chineseWord chineseInvisible 并同時(shí)映射到數(shù)據(jù)庫(kù)對(duì)應(yīng)的屬性字段;
2.定義了set/get方法用于存取數(shù)據(jù)













2.2 界面布局







2.3關(guān)鍵實(shí)現(xiàn)






3.2運(yùn)行過(guò)程示例




3)中文釋義顯示/隱層:?-成功


(4)切換視圖: -成功

5)搜索功能: –成功

(6)點(diǎn)擊單詞后跳到有道詞典搜索詳細(xì)詳細(xì)?–成功


4總結(jié)與建議
本課程學(xué)習(xí)了andorid的開(kāi)發(fā),經(jīng)過(guò)本次項(xiàng)目,對(duì)android開(kāi)發(fā)的整體把握更加清楚。
通過(guò)模塊化開(kāi)發(fā),對(duì)每個(gè)類(lèi)更加清楚,對(duì)liveData..SharePreference..navigation等類(lèi)的使用和數(shù)據(jù)庫(kù)的操作有了更加深入的理解。