版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于Android的記賬本App的設計與實現(xiàn)目錄TOC\o"1-2"\h\u18825基于Android的記賬本App的設計與實現(xiàn) 1155411緒論 266341.1選題背景和意義 249111.2研究的內容和方法 358621.3相關技術介紹 457872記賬App需求分析 5109122.1必要性分析 5230602.2可行性分析 6231382.3軟件功能需求分析 6312153記賬本APP應用整體功能和數(shù)據(jù)表設計 752673.1記賬本中的引導界面設計 822283.2用戶登陸注冊功能設計 841813.3收入支出類別顯示功能設計 9319573.4收入記賬功能設計 9242903.5支出記賬功能設計 9279043.6數(shù)據(jù)統(tǒng)計查詢功能設計 9258603.7輔助功能設計 962223.8記賬本APP的數(shù)據(jù)庫設計 10258854記賬本APP功能實現(xiàn) 11247304.1記賬本中的引導界面 11180704.2用戶登陸注冊功能 11206664.3收入支出類別顯示功能 14280854.4收入記賬功能 15218874.5支出記賬功能 16202594.6數(shù)據(jù)統(tǒng)計查詢功能 17183324.7輔助功能 1912005記賬本APP系統(tǒng)測試 2156095.1測試環(huán)境 2153915.2登陸測試 2168145.3注冊測試 21283215.4收支管理測試 22152205.5統(tǒng)計查詢測試 22219106總結與展望 23132696.1總結 23183926.2未來展望 23摘要:為了滿足用戶對生活中各項收入支出進行記錄和匯總的基本需求,本文采用基本界面組件、SharedPreference、SQLite數(shù)據(jù)庫技術設計并實現(xiàn)了一款基于Android系統(tǒng)的記賬管理APP。該應用具有基本的登錄和注冊、收支數(shù)據(jù)管理、數(shù)據(jù)統(tǒng)計和基本系統(tǒng)設置等功能,能夠讓用戶實時、便捷、個性化地管理自己的生活收支。文中對該應用的需求、設計和各項功能實現(xiàn)過程進行了詳細的介紹和分析。經過初步在樣機上運行測試,該應用能夠在測試機上正常安裝和運行,各項功能的運行效果達到了預期效果,能夠較好滿足用戶的各項需求。關鍵詞:記賬AndroidSQLite數(shù)據(jù)庫1緒論1.1選題背景和意義1.1.1選題背景自古以來,貨幣始終都作為眾多發(fā)展體系的核心運營介質存在,對其收入和支出的管理也已經成為必然的需求REF_Ref25492\r\h[1]。特別是在這個互聯(lián)網和物聯(lián)網快速發(fā)展的時代,生活在成熟經濟體系中的人們需要對自己的資產進行管理。隨著互聯(lián)網進一步的普及,新穎的互聯(lián)網便攜式終端也隨著互聯(lián)網時代的不斷更新,進一步更加貼近人類的生活當中REF_Ref25580\r\h[2]。人們的收入方式隨著各種新的收入和消費模式的不斷涌現(xiàn),也從以前的單一模式改變?yōu)楫斍暗亩嘣J?,這也使得人們對日常收入和消費的核算也開始變得復雜。高水平的合理支出需要健全的財務管理,而多種多樣的支付方式使得消費更容易,資產管理更困難。人們的財務意識比以前更強,為了更容易隨時掌握各種收入和支出信息以及自己的資金情況,有必要開發(fā)一個能夠幫助用戶進行收支管理的記賬本APP。由于手機的便利性,研究一款基于安卓的記賬本APP對于用戶管理日常收支來說是非常便利的,它可以幫助人們合理地計劃他們的錢并改善他們的生活質量。1.1.2選題意義如今,經濟活動時時刻刻在發(fā)生,無論是在商場購買物品,還是買票,買房,買車,人們的日常生活都伴隨著金錢的流動。隨著這種流動,人們對記賬的需求也在增加,人們需要一種更方便、更有效的記賬方式REF_Ref26247\r\h[3]。在互聯(lián)網普及之前,許多人使用傳統(tǒng)的記賬方法,他們隨身攜帶賬本和筆,這種記賬方法在很長一段時間內為人們提供了便利。然而,當賬本達到一定厚度,分錄數(shù)量逐漸增加時,賬目的統(tǒng)計分析變得非常費時費力,而且更容易發(fā)生錯誤REF_Ref26325\r\h[4]。隨著科學技術的不斷發(fā)展,計算機應用在人們生活的各個方面,許多人選擇放棄傳統(tǒng)的記賬方法,用計算機來記賬,通常使用Excel電子表格和專門用來記賬的軟件,這樣可以解決傳統(tǒng)記賬模式在統(tǒng)計方面的缺陷,大大提高了對賬目的統(tǒng)計分析能力。但是利用計算機記賬也存其自身的缺陷,因為記賬通常只記錄在固定的計算機中,記賬行為不是即時的,而且只靠記憶記賬很容易出現(xiàn)記憶錯誤和遺漏。目前,移動互聯(lián)網發(fā)展迅速,移動設備的門檻越來越低,幾乎每個人都有手機,從年輕人到老年人,他們都無法離開手機,這樣便體現(xiàn)出了手機記賬的優(yōu)勢,可以讓人們的記賬效率有一個極大的提高。所以,開設計和開發(fā)一款基于Android的記賬本APP是十分有意義的,它可以讓用戶在使用手機的前提下,在任何時間和地點記錄經濟活動的發(fā)生并快速統(tǒng)計其收入和支出,從而使用戶的記賬工作更加方便快捷。。1.2研究的內容和方法1.2.1研究內容本文的研究內容主要分為以下四部分:(1)介紹了選題的背景、意義、研究內容及使用的的研究方法,系統(tǒng)開發(fā)的關鍵技術等。(2)基于Android的個人記賬本APP的需求分析,其中包括必要性分析、可行性分析和功能需求分析。(3)基于Android的個人記賬本APP的設計,主要包括APP整體設計、數(shù)據(jù)庫數(shù)據(jù)表設計、各個模塊的功能的設計。(4)基于Android的個人記賬本APP的實現(xiàn),通過對用戶登陸、用戶注冊、統(tǒng)計管理、收支管理、和類別管理等各個功能模塊的實現(xiàn)對記賬APP的開發(fā)。最后對系統(tǒng)進行測試。1.2.2研究方法為了讓該研究的理論和實際聯(lián)系更加密切,更好的設計出一款實用便捷的記賬本APP,在研究的第一階段,我閱讀了一些相關的參考資料,下載了多個現(xiàn)有的記賬軟件,在了解當今學術研究現(xiàn)狀的基礎之上,根據(jù)一些手機APP的使用情況,揚長避短,設計出能讓用戶使用更加便捷高效的記賬本APP。在前期的資料收集階段,我主要采用了文獻檢索的方法,用“記賬”、“賬本”、“APP”、“應用開發(fā)”等關鍵詞在互聯(lián)網進行搜索,選擇與本項目相關的學術文獻。為了更好地學習相關知識,我對這些文獻進行了閱讀和分類,以獲得有關記賬軟件設計的信息,同時閱讀了相關的博客以及其他學術性網站以獲取相關知識從而對本文要研究的問題有了深入了解。在設計階段,根據(jù)對多個記賬或收支管理軟件的實際使用體驗,了解用戶的記賬需求,將理論與實踐結合,確定實際設計中的關注點,使理論的研究能夠應用于實踐。1.3相關技術介紹隨著Android移動應用的快速發(fā)展,人們的日常生活已經與移動應用密不可分REF_Ref25669\r\h[4]。本APP是一個基于Android的個人記賬APP,該APP讓用戶可以實時記錄他們的個人的收入和支出,實時管理他們的個人賬單,并對用戶的收支數(shù)據(jù)進行統(tǒng)計管理,以便用戶可以實時了解自己的收支情況,避免生活中的盲目消費。該系統(tǒng)主要采用了以下關鍵技術:1.3.1開發(fā)語言JAVAAndroid平臺所使用的開發(fā)語言是Java,大多數(shù)的網絡應用程序需要使用到Java,同時Java已經成為開發(fā)嵌入式和移動應用程序、基于Web的內容和企業(yè)軟件的全球標準REF_Ref25757\r\h[5]。Java的工作方式是將代碼轉換為二進制字節(jié),并通過JVM執(zhí)行,這使得語言的跨平臺開發(fā)成為可能REF_Ref25881\r\h[6]。通過隱藏平臺之間的底層硬件差異,而不強迫開發(fā)者編寫不同的代碼來適應底層硬件,這使得安卓可以在任何其他類型的硬件上運行,正因如此,Java才被不同操作系統(tǒng)的移動應用開發(fā)者廣泛使用。1.3.2AndroidStudioAndroidStudio和Eclipse同屬于Android開發(fā)軟件,但AndroidStudio相對Eclipse而言具有創(chuàng)建程序界面更加方便、有更詳細的打印信息、有更詳細的歷史編輯記錄、資源文件可以在代碼中預覽等特點。并且在進行開發(fā)時,資源文件中的內容可以在代碼中實時顯示除布局文件、圖像文件外的colors.xml文件中定義的顏色。本項目就是基于AndroidstudioIDE開發(fā)的。1.3.3SQLite數(shù)據(jù)庫SQLite由SQL編譯器、內核、后端以及附件組成,是一個開源的嵌入式數(shù)據(jù)庫引擎,由D.RichardHipp用C語言編寫。SQLite數(shù)據(jù)庫具有可移植性好、輕量級等特點,當人們對各種數(shù)據(jù)進行增刪改等操作的時候,SQLite可以對數(shù)據(jù)自動進行數(shù)據(jù)屬性匹配并進行相應的判斷以及實現(xiàn)對判斷結果的操作REF_Ref25972\r\h[7]。正是因為它具有如此多優(yōu)點,所以本次記賬本APP的設計就選擇用SQlite來進行數(shù)據(jù)管理。2記賬App需求分析2.1必要性分析記賬的形式有很多種,有的人現(xiàn)在還是會隨身帶著筆記本和筆以便于隨時隨地記賬,雖然說這種利用紙筆記賬的方法能夠第一時間記錄消費發(fā)生的情況,但是想要完善還需要在后期做大量的人工工作來統(tǒng)計數(shù)據(jù),更不用說將數(shù)據(jù)報表輸出了;而有的人選擇的記賬方式是通過電腦軟件來記賬,帶有強大的數(shù)據(jù)分析和報表輸出功能是這種方法最大的優(yōu)點,但是麻煩是使用者需要隨身攜帶電腦,就算是筆記本電腦一直隨身攜帶也是很不方便的,而且這種方法幾乎不可能在第一時間對消費進行記錄。種種方式,要么沒有分析功能,要么記賬方式在時間和空間上受到限制,這往往阻礙了持續(xù)記賬習慣的養(yǎng)成,更不用說進行個人財務規(guī)劃。因此,綜上所述十分有必要設計并開發(fā)一個具有數(shù)據(jù)統(tǒng)計和報表分析功能的同時又便捷小巧的移動記賬軟件。2.2可行性分析2.2.1經濟可行性傳統(tǒng)的手工記賬當然有其優(yōu)勢,但其劣勢也很明顯。雖然賬本和筆不是很貴,但它們的丟失或意外毀壞可能是不可逆轉的,而且建立統(tǒng)計和轉移賬目可能很耗時。而手機記賬更便宜,更可靠,更容易在用戶的指尖上進行。與Excel表格記賬或計算機上的記賬軟件相比,后者存在不即時等各種限制。而手機記賬可以在任何時間和地點進行,當消費發(fā)生或收入入賬時,可以通過手機及時記錄,不需要花費太多的時間和金錢就可以輕松方便地使用。本系統(tǒng)的設計與實現(xiàn)是基于Android平臺的,首先Android平臺是一個完全開放源碼的平臺,在將開發(fā)環(huán)境搭建好后,可以使用Android提供的免費開發(fā)環(huán)境和SQLite數(shù)據(jù)庫進行開發(fā),不必考慮上述技術的額外經濟成本。其次,開發(fā)時對所需硬件的要求不高,可以在一臺普通配置的電腦開發(fā)Android系統(tǒng),Android自帶的模擬器就可以對手機應用進行調試,因此開發(fā)硬件成本極低。所以,系統(tǒng)在經濟上是可行的。2.2.2技術可行性該系統(tǒng)使用Android平臺開發(fā)實現(xiàn),使用MVC架構,系統(tǒng)的整個業(yè)務應用分為數(shù)據(jù)訪問層、業(yè)務邏輯層和表示層,共同實現(xiàn)了收支管理、數(shù)據(jù)統(tǒng)計查詢等邏輯。對于系統(tǒng)的設計和實施,將需要解決的問題分為不同的功能模塊,以方便編碼和實施,并提高系統(tǒng)的可擴展性和資源分配的合理性。本系統(tǒng)是一個基于Android操作系統(tǒng)的手機應用軟件,我在Java編程方面有一定的基礎和經驗,對Android的基礎知識也有一定的了解,所以可以通過邊學習邊逐步完善本系統(tǒng),綜上所述,本系統(tǒng)是可以實現(xiàn)的。2.3軟件功能需求分析通過對傳統(tǒng)的手工記賬和計算機在電子表格及記賬軟件中的使用的分析,分析了上述兩種記賬軟件中收支錄入的方法,發(fā)現(xiàn)傳統(tǒng)記賬方式具有統(tǒng)計分析過程復雜耗費人力、安全性低的缺點,而計算機記賬操作繁瑣、不及時,這款手機記賬本APP的目的就是為了解決以上兩種記賬方式中存在的問題。在分析了現(xiàn)有的移動會計軟件的現(xiàn)狀后,提煉出了手機記賬軟件的基本功能,最終確定了這個記賬本APP的功能需求。確定的功能需求如下:2.3.1系統(tǒng)設置用戶的注冊、登錄收入類別管理支出類別管理2.3.2收入管理功能收入明細收入錄入2.3.3支出管理功能支出明細支出錄入2.3.4統(tǒng)計報表功能收入分類統(tǒng)計支出分類統(tǒng)計2.3.5輔助功能幫助分享、導出3記賬本APP應用整體功能和數(shù)據(jù)表設計通過前一章的需求分析,將系統(tǒng)劃分成收入管理模塊、支出管理模塊、統(tǒng)計報表模塊、系統(tǒng)設置模塊、輔助功能模塊這五個模塊。軟件整體架構如圖所示:記賬本主要功能記賬本主要功能收入管理統(tǒng)計報表系統(tǒng)設置輔助功能支出管理收入明細收入錄入支出明細支出錄入收入分類統(tǒng)計支出分類統(tǒng)計收入類別管理支出類別管理注冊登陸幫助分享導出圖4.1基于Android的記賬APP的總體功能圖3.1記賬本中的引導界面設計用戶第一次安裝使用該應用時,會出現(xiàn)引導頁。關閉后臺、清除用戶數(shù)據(jù)或者卸載重新安裝應用后,再次打開也會出現(xiàn)引導頁。點擊引導頁下方的“進入應用”按鈕就可以進入應用,出現(xiàn)用戶登陸注冊頁面。3.2用戶登陸注冊功能設計用戶登錄:進入應用后,顯示的是登陸頁面,已經注冊過賬號的用戶輸入用戶昵稱和密碼,用戶昵稱和密碼驗證通過后,即進入記賬本主頁面。如果用戶忘記密碼,可點擊“忘記密碼”按鈕,頁面中就會彈出注冊用戶時設置的密碼提示。用戶注冊:進入應用后要求輸入用戶昵稱密碼登錄,如果是第一次使用記賬本的用戶,需要點擊頁面中“注冊用戶”按鈕進行用戶注冊。點擊“注冊用戶”后進入注冊頁面,輸入昵稱、密碼、確認密碼和密碼提示,然后點擊“注冊”即完成注冊。3.3收入支出類別顯示功能設計用戶在進行記賬時,可選擇收入和支出的分類,比如收入分類可選擇“工資”選項、支出分類可選擇“食物”選項。這些收入和支出的分類,可以在導航欄中的設置中去添加。3.4收入記賬功能設計(1)添加一筆收入:在記賬界面,用戶選擇收入記賬.然后選擇收入的具體類別,例如,收入類別可以是工資或者兼職。然后用戶需要填寫如金額和備注信息等具體信息,添加成功后,將數(shù)據(jù)發(fā)送到數(shù)據(jù)庫。(2)刪除收入記錄:用戶選擇需要刪除的收入記錄長按,跳出詢問:“您確認要刪除選中項?”,選擇“確認”,即可刪除該收入記錄。3.5支出記賬功能設計(1)添加一筆支出:在記賬界面,用戶選擇支出記賬.然后選擇支出的具體類別,例如,支出類別可以是圖書、食物或者房租。然后用戶需要填寫如金額和備注信息等具體信息,添加成功后,將數(shù)據(jù)發(fā)送到數(shù)據(jù)庫。(2)刪除支出記錄:用戶選擇需要刪除的支出記錄長按,跳出詢問:“您確認要刪除選中項?”,選擇“確認”,即可刪除該支出記錄。3.6數(shù)據(jù)統(tǒng)計查詢功能設計數(shù)據(jù)統(tǒng)計:數(shù)據(jù)統(tǒng)計模塊主要是根據(jù)歷史支出賬目數(shù)據(jù),按照不同分類生成餅狀圖,使用戶對自己的支出數(shù)據(jù)一目了然。數(shù)據(jù)查詢:數(shù)據(jù)查詢模塊主要功能是:用戶可以查詢想要查詢的時間段內的收支明細。該功能設置在導航欄中的“報告”選項中,點擊報告輸入起始日期,選擇收入或支出選項,點擊查詢按鈕即可獲得收支明細。3.7輔助功能設計(1)分享:點擊導航欄中的“分享”按鈕即可將收支數(shù)據(jù)分享,例如選擇“復制到粘貼板”即可導出“您的收入?yún)R總為:5000.000000;您的支出匯總為:2110.00000。”的信息。(2)幫助:點擊導航欄中的“幫助”按鈕,就會出現(xiàn)幫助頁面,可以選擇快速入門或使用指南選項,便于剛開始使用該記賬本App的用戶盡快熟悉使用功能。3.8記賬本APP的數(shù)據(jù)庫設計通過數(shù)據(jù)庫可以使用戶更加方便管理自己的信息,所以數(shù)據(jù)庫是每個系統(tǒng)不可缺少的部分。本APP數(shù)據(jù)庫中包含賬戶表、收入信息表和支出信息表。用戶的基本信息儲存在賬戶表中,包括昵稱和密碼。用戶的收入信息存儲在收入信息表中,收入表包括了收入類別、收入金額、收入日期和備注。用戶的支出信息儲存在支出信息表中,支出表包括了支出類別、支出金額、支出日期和備注。應用中的數(shù)據(jù)表詳細設計如下:表3-1賬戶表字段名稱數(shù)據(jù)類型主鍵外鍵描述idintegerYN用戶idnamevarchar(20)NN昵稱passwordvarchar(20)NN密碼表3-2收入信息表字段名稱數(shù)據(jù)類型主鍵外鍵描述idintegerNY用戶idcategorytextNN收入類別moneydoubleNN收入金額remarktextNN備注datetextNN日期時間表3-3支出信息表字段名稱數(shù)據(jù)類型主鍵外鍵描述idintegerNY用戶idcategorytextNN支出類別moneydoubleNN支出金額remarktextNN備注datetextNN日期時間4記賬本APP功能實現(xiàn)4.1記賬本中的引導界面圖4.1APP引導頁面圖如圖4.1所示,打開軟件首先會出現(xiàn)引導頁,點擊“進入應用”按鈕即可進入應用。4.2用戶登陸注冊功能4.2.1登陸功能的實現(xiàn)進入應用首先顯示的是登陸頁面,輸入用戶昵稱和密碼即可登錄,如果輸入錯誤或不輸入密碼就會提示“密碼錯誤”,若點擊“忘記密碼”,即出現(xiàn)密碼提示,該提示是用戶注冊時設置的。具體實現(xiàn):使用屬性onClick在布局文件中指定一個處理方法,其次使用OnClickListener監(jiān)聽器來實現(xiàn)。具體實現(xiàn)效果如圖4.2、圖4.3和圖4.4所示。圖4.2用戶登錄頁面圖圖4.3密碼錯誤提示圖圖4.4忘記密碼提示圖4.2.2注冊功能的實現(xiàn)首次使用記賬本APP的用戶,進入登陸頁面后,可以點擊“注冊用戶”進入注冊,然后輸入昵稱、密碼、確認密碼和密碼提示后,即可注冊成功。若昵稱和密碼處沒有填寫,點擊注冊后會提示“昵稱不能為空”和“密碼不能為空”,如果確認密碼處填入信息與密碼處不一致則會提示“兩次密碼不相同”。主要代碼如下:
SharedPreferencessp=this.getSharedPreferences("tinyaccount",MODE_PRI);
SharedPreferences.Editoreditor=sp.edit();
editor.putString("name",name);
editor.putString("password",pwd);
editor.putString("prompt",prompt);
editor.apply();
具體實現(xiàn)效果如圖4.5、圖4.6圖4.7所示。圖4.5用戶注冊頁面圖圖4.6注冊密碼為空時提示圖圖4.7注冊確認密碼與密碼不一致時提示圖4.3收入支出類別顯示功能在導航欄的設置中顯示的是記賬本的收入類別和支出類別,方便再記賬式進行類別的選擇,更加清楚明了地進行記賬。用Gridview組件和SimpleAdapter來實現(xiàn)該功能。主要代碼如下:
List<AccountCategory>outlayCategoryList=dbManager.getOutlayType();
List<Map<String,Object>>outlayList=newArrayList<>();
for(AccountCategoryc:outlayCategoryList){
Map<String,Object>Mymap=newHashMap<String,Object>();
Mymap.put("icon",c.getIcon());
Mymap.put("title",c.getCategory());
outlayList.add(Mymap);
}
adapter2=newSimpleAdapter(this,視圖資源ID,mFrom,mTo);
gridView2.setAdapter(adapter2);
具體實現(xiàn)效果如圖4.8所示。同時收入類別和支出類別也可以進行添加。具體實現(xiàn):實現(xiàn)首先在AccountDao中添加一個增加收入類別的addIncomeCategory方法,在SettingActivity的refreshData方法中,通過AccountApplication獲得AccountDao,在initView()方法中獲取增加收入類別按鈕控件,調用自定義添加收入類別的buttonAddIncomeCategoryOnClick方法,最后對對話框內容和類別進行設置。具體實現(xiàn)效果如圖4.9所示。圖4.8記賬類別分類頁面圖圖4.9添加記賬類別頁面圖4.4收入記賬功能點擊“收入”進入收入記賬頁面,用戶可以在該頁面點擊右上角“加號”添加收入,長按刪除收入,該頁面是應用ListView實現(xiàn)的。實現(xiàn)效果如圖4.10所示。圖4.10收入記賬頁面圖圖4.11增加收入頁面圖點擊“加號”即出現(xiàn)如圖4.11所示頁面,這一功能時使用Intent對象實現(xiàn)的頁面?zhèn)髦堤D。選擇好收入類別填入金額,點擊“確定”即可添加收入。具體實現(xiàn):首先布局顯示界面,然后通過獲取數(shù)據(jù)、創(chuàng)建適配器、GridView綁定適配器來實現(xiàn)GridView的數(shù)據(jù)顯示。使用position參數(shù)獲得點擊位置的內容,給GridView注冊單機監(jiān)聽器,重寫監(jiān)聽器的onItemClick方法。實現(xiàn)了在gridView中點擊數(shù)據(jù),將數(shù)據(jù)添加到文本視圖的功能。對于用戶想要刪除的數(shù)據(jù),長按想要刪除的收入明細,即出現(xiàn)如圖4.12所示頁面,點擊“確認”后,通過對數(shù)據(jù)庫的訪問,即可刪除該條數(shù)據(jù)。圖4.12確認刪除收入頁面圖4.5支出記賬功能點擊“支出”進入支出記賬頁面,用戶可以在該頁面點擊右上角“加號”添加收入,長按刪除支出,該頁面與收入頁面一樣是應用ListView實現(xiàn)的。實現(xiàn)效果如圖4.13所示。圖4.13支出記賬頁面圖圖4.14增加支出頁面圖在該頁面點擊“加號”即可添加支出,長按即可刪除。實現(xiàn)方法同收入記賬功能實現(xiàn)方法相同,實現(xiàn)效果如圖4.14和圖4.15所示。 圖4.15確認刪除支出頁面圖4.6數(shù)據(jù)統(tǒng)計查詢功能在概要頁面中顯示的是當月各種消費分類的匯總數(shù)據(jù),由餅圖的形式展示出來,不同的支出類型以不同的顏色進行標識。具體實現(xiàn):使用MPAndroidChart第三方庫實現(xiàn)記賬本中指出的餅圖顯示效果,將MPAndroidChart-v2.2.2jar包放入libs目錄下。第一步進行布局,在代碼中通過添加的id獲取餅圖控件。第二部設置三個方面的數(shù)據(jù):餅圖上數(shù)據(jù)的分類即xValues、每種分類所對應的數(shù)值即yValues和每種分類的顏色顯示即colors。第三步設置餅圖的一些基本屬性。最后再為圖標添加圖例和各種動畫效果。主要代碼如下:
AccountDaodbManager=app.getDatabaseManager();
TextViewtextViewSummary;
doublesummary=dbManager.getIncomeSummary(app.currentDateMonth)-
dbManager.getOutlaySummary(app.currentDateMonth);
textViewSummary.setText(String.valueOf(summary));
ChartManagerchartManager=newChartManager(this.getActivity());
PieChartpieChart=(PieChart)rootView.findViewById(R.id.pie_chart);
chartManager.showPieChart_Account(pieChart,app.currentDateMonth);實現(xiàn)效果如圖4.16所示。圖4.16APP數(shù)據(jù)統(tǒng)計頁面圖APP的收入支出頁面顯示的是當前月份的數(shù)據(jù),用戶要想查看歷史數(shù)據(jù)就需要通過查詢統(tǒng)計功能界面來看,查詢統(tǒng)計功能可以提供某一時間段內的收入和支出明細,用戶可以查詢任意時間段的數(shù)據(jù)。具體實現(xiàn):該界面分為上方的圖標區(qū)、中間輸入?yún)^(qū)和下方的顯示數(shù)據(jù)的listview。頁面完成后通過從界面上獲取用戶輸入的日期數(shù)據(jù),然后創(chuàng)建數(shù)據(jù)訪問對象來查詢數(shù)據(jù),最后創(chuàng)建適配器設置到Listview組件上這幾個步驟來實現(xiàn)數(shù)據(jù)的查詢。實現(xiàn)效果如圖4.17、圖4.18所示。圖4.17收入明細查詢頁面圖圖4.18支出明細查詢頁面圖4.7輔助功能在記賬本中,用戶可以點擊“分享”按鈕,可以將當月的收入和支出匯總信息發(fā)送給朋友,可以選擇短信等應用進行分享。具體實現(xiàn):首先使用AccountDao中的統(tǒng)計匯總方法生成要分享的文字信息,信息內容設計為“您的收入?yún)R總為xxx,您的支出匯總為xxx”。分享功能通過Intent隱式意圖來實現(xiàn),需要創(chuàng)建一個Intent。ACTION_SEND,通過setType方法指定分享的類型為文本,最后調用startActivity,系統(tǒng)會彈出處理send的應用列表,讓用戶選擇分享的目標應用,選擇后即可分享。實現(xiàn)效果如圖4.19所示。圖4.19記賬分享頁面圖5記賬本APP系統(tǒng)測試5.1測試環(huán)境本手機APP通過在AndroidStudio模擬器上對各種功能進行測試,所使用的API為28,CPU為x865.2登陸測試該部分主要測試用戶名密碼是否能配對。在登陸頁面,輸入用戶昵稱和密碼,驗證通過后,進入記賬本主頁面。用戶名和密碼有一項為空或輸入錯誤,出現(xiàn)系統(tǒng)提示“用戶名或密碼錯誤”。表5-1用戶登錄模塊測試用例編號功能測試用例預期結果測試結果1用戶登錄用戶名:Dear密碼:123正確進入系統(tǒng)內部正確2用戶登錄用戶名:Dear密碼1003系統(tǒng)提示“用戶名或密碼錯誤”正確3用戶登錄用戶名:dear密碼:123系統(tǒng)提示“用戶名或密碼錯誤”正確4用戶登錄用戶名:“空”密碼:123系統(tǒng)提示“用戶名或密碼錯誤”正確5用戶登錄用戶名:Dear密碼:“空”系統(tǒng)提示“用戶名或密碼錯誤”正確5.3注冊測試在登陸頁面點擊“注冊用戶”進入注冊頁面,輸入昵稱、密碼、確認密碼和密碼提示,點擊“注冊”,注冊成功。如果昵稱和密碼處沒有填寫,系統(tǒng)提示“昵稱不能為空”和“密碼不能為空”;如果確認密碼處填入信息與密碼處不一致,系統(tǒng)提示“兩次密碼不相同”。表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年物業(yè)管理與維護合作協(xié)議3篇
- 2024新媒體項目協(xié)作協(xié)議簡約版版B版
- 2024年貨物銷售合同協(xié)議書
- 2024年物業(yè)維修服務協(xié)議(含裝修)3篇
- 2024微信小程序功能定制開發(fā)服務合同3篇
- 2024年股權轉讓協(xié)議(復雜版)
- 2024政府與華為簽訂的環(huán)保產業(yè)合作協(xié)議3篇
- 2024年貨車非官方過戶銷售協(xié)議書版
- 2024新型智能家居產品研發(fā)與技術服務協(xié)議
- 2024年藝人經紀公司與藝人獨家代理合同
- 2024年1月國開電大法律事務專科《企業(yè)法務》期末考試試題及答案
- 2024全國能源行業(yè)火力發(fā)電集控值班員理論知識技能競賽題庫(多選題)
- 因式分解(分組分解法)專項練習100題及答案
- 冶煉煙氣制酸工藝設計規(guī)范
- 《上帝擲骰子嗎:量子物理史話》超星爾雅學習通章節(jié)測試答案
- Unit13 同步教學設計2023-2024學年人教版九年級英語全冊
- 2023-2024學年河北省保定市滿城區(qū)八年級(上)期末英語試卷
- 2024成都中考數(shù)學第一輪專題復習之專題四 幾何動態(tài)探究題 教學課件
- 2024合同范本之太平洋保險合同條款
- 萬用表的使用
- TDT1062-2021《社區(qū)生活圈規(guī)劃技術指南》
評論
0/150
提交評論