歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

基于Android Studio的餅圖賬單的設(shè)計與開發(fā)-畢業(yè)論文

  • 資源ID:130286439       資源大?。?span id="75wwpuk" class="font-tahoma">942KB        全文頁數(shù):30頁
  • 資源格式: DOC        下載積分:10積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要10積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

基于Android Studio的餅圖賬單的設(shè)計與開發(fā)-畢業(yè)論文

Anhui Vocactional & Technical College of Industry & Trade畢 業(yè) 論 文基于Android Studio的餅圖賬單的設(shè)計與開發(fā)Design and Development of PieChart Billing Based on Android Studio所在系院: 計算機信息工程系 專業(yè)班級: 計算機應(yīng)用技術(shù)(2)班 學(xué)生學(xué)號: 2015030235 學(xué)生姓名: 指導(dǎo)教師: 2018年 4 月 12 日 目錄目錄I摘 要IAbstractII引言1第一章 Android基本介紹1第二章 國內(nèi)外手機系統(tǒng)現(xiàn)狀22.1 iOS:生態(tài)封閉和推送機制22.2 Android:依然碎片化,但安卓7.0速度提升32.3 Win10m:機型太少,能夠更新不多5第三章 Android相關(guān)組件介紹及分析63.1 Fragement63.2 Fragement生命周期63.3 ViewPager73.4 JSON73.5 MPAndroidChart8第四章 Android活動的生命周期84.1 活動的生命狀態(tài)84.2 活動的運作流程10第五章 餅圖賬單的設(shè)計與實現(xiàn)115.1 研究目標115.2 實現(xiàn)步驟115.2.1 使用ViewPager+Fragment實現(xiàn)案例布局115.2.2 Json數(shù)據(jù)解析、封裝、傳遞給Fragment145.2.3 繪制賬單餅狀圖并顯示賬單數(shù)據(jù)165.2.4 實現(xiàn)切換按鈕點擊事件(顯示其他月賬單界面)165.2.5 程序完成17第六章 主要結(jié)論17參考文獻18致謝19附錄20摘要隨著信息化社會的發(fā)展,Android智能產(chǎn)品已日益成為越來越多的人們選擇的移動終端產(chǎn)品。伴隨著Android智能手機與平板電腦已經(jīng)在我們生活大量的使用,越來越多的基于Android開發(fā)平臺的應(yīng)用也隨之而出,為豐富人們使用Android智能產(chǎn)品的用途,使其可以幫人們記錄一些事情,并提醒用戶做出相應(yīng)的操作。本文設(shè)計開發(fā)的本Android餅圖賬單軟件也是應(yīng)用開發(fā)的一個idea,該軟件能幫助人們查看顯示每月賬單,從而合理規(guī)劃消費和投資增強對個人財務(wù)的敏感度,提高理財水平。Android餅圖賬單主要特點在于利用餅圖直觀的展示各項消費所占當月總支出的百分比,并且在點擊具體消費內(nèi)容實現(xiàn)餅圖下滑放大使內(nèi)容更加詳細。Android餅圖賬單的開發(fā)過程包括1.ViewPager+Fragment打造左右滑動UI架構(gòu),2.Json數(shù)據(jù)解析,封裝,與數(shù)據(jù)傳遞 ,3.MPAndroidChart打造餅狀圖的功能,4.實現(xiàn)與問題解決。本次開發(fā)工具選擇了Android Studio2.3.1。關(guān)鍵詞:賬單;Android Studio;ViewPage;Fragment;Json;MPAndroidChartAbstractWith the development of information society, Android intelligent products have increasingly become more and more people choose mobile terminal products. With Android intelligent mobile phone and tablet computer is already in use in our life a lot, more and more applications based on Android platform are also appeared, for rich people use Android use of smart products, which can help people to record some of the things that make the corresponding operation and remind users. A idea this paper designed and developed the Android pie chart is billing software application development, the software can help people see the display monthly bills, thus the reasonable planning of consumption and investment to enhance sensitivity to personal finance, improve financial management level.Android pie chart is mainly characterized by the use of the pie chart shows the proportion of consumption of the total monthly expenditure, and click on the specific content of the consumer to achieve the decline in the content of the cake ambassador content.The development process of Android pie bills including 1.ViewPager+Fragment sliding around to create the UI architecture, 2.Json data analysis, package, and data transfer, 3.MPAndroidChart to create a pie chart, 4 implementation and problem solving. The development tool selected Android Studio2.3.1.Key words: Android Studio; ViewPage; Fragment; Json; MPAndroidChartIV引言目前隨著移動設(shè)備越來越普及以及移動設(shè)備的硬件的提升,移動設(shè)備的功能越來越完善,移動設(shè)備的系統(tǒng)平臺也日漸火熱起來。目前國內(nèi)最常見的移動開發(fā)平臺有Symbian,iPhone,Windows Phone以及當下正在逐步興起的Android。目前為止國內(nèi)已經(jīng)有很多Android系統(tǒng)的用戶。截止2010年第二季度Android系統(tǒng)的國內(nèi)市場占有率已經(jīng)過10%,在西歐以及北美智能手機市場占有率也在20%左右??梢夾ndroid系統(tǒng)正在崛起之中。但是對于Android系統(tǒng)的應(yīng)用和開發(fā)在國內(nèi)仍然屬于起步和探索階段。急需要大量的相關(guān)技術(shù)和人員的投入。第一章 Android基本介紹Android一詞的本義指“機器人”,同時是Google于2007年11月5日宣布的基于Linux平臺的開源手機操作系統(tǒng)的名稱,該平臺由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成。Android的Logo是由Ascender公司設(shè)計的,誕生于2010年,其設(shè)計靈感源于男女廁所門上的圖形符號,于是布洛克繪制了一個簡單的機器人,它的軀干就像錫罐的形狀,頭上還有兩根天線,Android小機器人便誕生了。其中的文字使用了Ascender公司專門制作的稱之為“Droid ” 的字體。Android是一個全身綠色的機器人,綠色也是Android的標志。顏色采用了PMS 376C和RGB中十六進制的#A4C639來繪制Android操作系統(tǒng)的品牌象征。有時候,它們還會使用純文字的Logo。1圖 一-1 Logo第二章 國內(nèi)外手機系統(tǒng)現(xiàn)狀在過去很長的一段時間,蘋果iOS、谷歌安卓和微軟Windows被稱作三大移動操作系統(tǒng),盡管隨著視窗系統(tǒng)在手機領(lǐng)域的份額不斷下滑,“萬年老三”的寶座已經(jīng)易位給了YunOS,但不少人習慣上還是認為他們是智能手機系統(tǒng)的代表。而說到這三大系統(tǒng)的更新方面,就是另一個局面了,可以說有人歡喜有人愁。今天就帶大家看看這三大手機系統(tǒng)現(xiàn)在的更新現(xiàn)狀。2.1 iOS:生態(tài)封閉和推送機制眾所周知,iOS是一個生態(tài)封閉的移動操作系統(tǒng)。蘋果為了專注于營造自己的生態(tài),在某些地方多多少少給用戶帶來了一些不便。但不得不承認,這樣的做法在系統(tǒng)升級上反而是有好處的,更便于集中管制。圖 二-1 iosiOS只會預(yù)裝在蘋果設(shè)備上,而蘋果每年推出的iPhone一般不超過3款,即使是iPhone全系的數(shù)量加起來,可能也就和一家國產(chǎn)安卓廠商一年發(fā)布的新機數(shù)量差不多,再加上又是自家的系統(tǒng),在系統(tǒng)更新和維護的壓力上自然要小很多。圖 二-2 IOS Lanchues以最新的iOS 10為例,據(jù)國外分析機構(gòu)Fiksu(數(shù)據(jù)截至去年10月)統(tǒng)計,iOS 10在正式版上線一個月后,系統(tǒng)覆蓋率已經(jīng)高達66.7%,大幅逆襲以往版本,當然現(xiàn)在已經(jīng)不止這點了。而蘋果日前也向用戶推送了iOS 10.3.1系統(tǒng),相信在看文章的iPhone用戶幾乎都升級了吧?當然,iOS 10之所以覆蓋率能迅速上升,和蘋果的推送機制分不開。新系統(tǒng)發(fā)布能讓用戶第一時間知道并立刻升級的,也就只有OTA了(未越獄)。蘋果采用的是一種間歇式提醒的方式,讓用戶想不升級都不行,因為新系統(tǒng)的提醒更新頁面就一直在你眼前晃悠,根本無法忽視。2.2 Android:依然碎片化,但安卓7.0速度提升相對于蘋果的封閉專一,安卓因為開放而在系統(tǒng)升級上元氣大傷,要想升級系統(tǒng)就對用戶選手機的眼光要求特別高,畢竟不是每臺安卓機都有資格升級。谷歌只能保證自己親兒子最快升級,第三方廠商都是“同床異夢”:有像LG這樣7.0發(fā)布后78天就推送正式更新的(韓版G5),也有像oppo、vivo這樣一個系統(tǒng)版本用到換機的。圖 二-3牛扎糖系統(tǒng)根據(jù)谷歌2017年4月的安卓系統(tǒng)份額統(tǒng)計,最新的牛軋?zhí)窍到y(tǒng)份額依然不容樂觀,合占不到5%,處于安卓系統(tǒng)主力的依然是棒棒糖和棉花糖。圖 二-4 4月份額統(tǒng)計這兩個系統(tǒng)份額的大幅度崛起,和去年國產(chǎn)手機的爆發(fā)不無關(guān)系,但爆發(fā)的同時也在市面上涌現(xiàn)了一批出廠預(yù)裝低版本系統(tǒng)的機型。但同時也要注意到,牛軋?zhí)窍到y(tǒng)的升級速度相比以往版本發(fā)布半年后要更加樂觀。這方面國產(chǎn)廠商也要記一功,諸如華為、一加等部分勤勞的國產(chǎn)廠商,盡管沒有搶到全球首發(fā),但是和首批升級的國際廠商在更新速度差距方面越來越小,甚至還超過了一些原本更新速度就不快的國際廠商,例如三星。圖 二-5 Emotion UI不過整體上看,盡管升級速度有所提升,但安卓在系統(tǒng)更新上還是有繼續(xù)進步的空間。目前大部分廠商都關(guān)注于新系統(tǒng)發(fā)布當年所推出的手機更新,而前一年的機型升級率都非常低,這點是不能忽視的。2.3 Win10m:機型太少,能夠更新不多如果說在WM和WP時期,微軟在手機行業(yè)還算有點話語權(quán),那么到了Win10m時期,即使是系統(tǒng)升級也顯得分外凄涼。近日,微軟公布了Win10m的創(chuàng)作者更新(Creators Updates),但出人意料的是,能夠升級這一系統(tǒng)的全球僅有13款機型,并且有不少都是第三方廠商的產(chǎn)品??傊?,在市場穩(wěn)定快速增長的同時,中國安卓手機市場將呈現(xiàn)五大發(fā)展趨勢:多媒體和移動應(yīng)用需求的上升,將成為市場發(fā)展的主要動力;PDA功能類和開放程度高的操作系統(tǒng)產(chǎn)品,將是手機產(chǎn)品的發(fā)展趙勢;產(chǎn)品持續(xù)大幅度降價和價格競爭趨于激烈,將是產(chǎn)品價格發(fā)展的趨勢;渠道形式多樣化和手機渠道仍占主流,將是產(chǎn)品渠道發(fā)展的主要趨勢;差異化售后服務(wù)和個性化增值服務(wù),將成為產(chǎn)品服務(wù)發(fā)展的趨勢。 總體來說,Android智能手機系統(tǒng)以它豐富多樣并超前的功能給我們的生活帶來了巨大改變但從利弊方面來說,它在給我們帶來方便的同時,也帶來一些負面影響。因此,我們應(yīng)該理性面對,理智使用,不能沉迷于此,更不能憑借它的功能為所欲為。我們應(yīng)該正確面對Android,讓它隨著時代與科技的發(fā)展,給人類帶來更多的福利。如此一來,安卓手機的發(fā)展前景才是一片光明的。第三章 Android相關(guān)組件介紹及分析3.1 FragementAndroid 常用組件之一,可以有效解決不同屏幕分辯率的動態(tài)和靈活UI設(shè)計。大屏幕如平板,小屏幕如手機,平板電腦的設(shè)計使得其有更多的空間來放更多的UI組件,而多出來的空間存放UI使其會產(chǎn)生更多的交互,從而誕生了fragments 。fragments 的設(shè)計不需要你來親自管理view hierarchy 的復(fù)雜變化,通過將Activity 的布局分散到frament 中,可以在運行時修改activity 的外觀,并且由activity 管理的back stack 中保存些變化。3.2 Fragement生命周期(1) onAttach()/當一個Fragment對象關(guān)聯(lián)到一個Activity時調(diào)用。(2) onCreate()/初始創(chuàng)建Fragment對象時調(diào)用。系統(tǒng)創(chuàng)建Fragments 時調(diào)用,可做執(zhí)行初始化工作或者當程序被暫?;蛲V箷r用來恢復(fù)狀態(tài),跟Activity 中的onCreate相當。(3) onCreateView()/創(chuàng)建與Fragment對象關(guān)聯(lián)的View視圖時調(diào)用。用于首次繪制用戶界面的回調(diào)方法,必須返回要創(chuàng)建的Fragments 視圖UI。假如你不希望提供Fragments 用戶界面則可以返回NULL。(4) onActivityCreated()/當Activity對象完成自己的onCreate方法時調(diào)用。(5) onStart()/Fragment對象在ui可見時調(diào)用。(6) onResume()/Fragment對象的ui可以與用戶交互時調(diào)用。(7) onPause()/Fragment對象可見,但不可交互。有Activity對象轉(zhuǎn)為onPause狀態(tài)時調(diào)用。 當用戶離開這個Fragments 的時候調(diào)用,這時你要提交任何應(yīng)該持久的變化,因為用戶可能不會回來。更多的事件可以參考上圖的生命周期關(guān)系圖。(8) onStop()/有空間完全遮擋;或者宿主Activity對象轉(zhuǎn)為onStop狀態(tài)時調(diào)用。(9) onDestroyView()/Fragment對象清理view資源時調(diào)用,也就是移除fragment中的視圖。(10) onDestroy()/Fragment對象完成對象清理View資源時調(diào)用。(11) onDetach()/Fragment對象沒有與Activity對象關(guān)聯(lián)時調(diào)用。當一個fragment被創(chuàng)建的時候執(zhí)行1-4;當這個fragment創(chuàng)建完畢,到對用戶可見的時候,執(zhí)行5-6;當這個fragment從可見到不可見時,執(zhí)行7-8;當這個fragment被銷毀了(或者持有它的activity被銷毀了),執(zhí)行9-11;另外在3-5,可以使用Bundle對象保存一個fragment的對象。3.3 ViewPagerViewPager繼承自ViewGroup,也就是ViewPager是一個容器類,可以包含其他的View類ViewPager是一個允許使用者左右滑動數(shù)據(jù)頁面的布局管理器。你可以通過一個適配器(PagerAdapter)來管理要顯示的頁面。不過要注意的是,這個類目前還處于初期的設(shè)計和開發(fā)。隨著今后兼容庫的更新,API文檔也會進行更改,同時應(yīng)用程序在編譯時也需要對代碼進行一定的修改。ViewPager更多的時候會與Fragment一起使用,這是一種很好的方法來管理各個頁面的生命周期。Android提供了一些專門的適配器來讓ViewPager與Fragment一起工作,也就是FragmentPagerAdapter與FragmentStatePagerAdapter。他們基本上可以滿足大部分常見的永續(xù)需求,并且他們都有簡單的代碼樣例來展示如何用他們來建立一個完整的用戶頁面。所以Viewpage具有以下特性:1) ViewPager主要用來左右滑動。(類似圖片輪播)2) ViewPager要用適配器來連接“視圖”和“數(shù)據(jù)”。(大家可以聯(lián)想下listview的使用方法,理是類似的)3) 官方推薦ViewPager與Fragment一起使用,并且有專門的適配器。3.4 JSONJSON(JavaScript Object Notation, JS 對象標記) 是一種輕量級的數(shù)據(jù)交換格式。它基于 ECMAScript 規(guī)范的一個子集,采用完全獨立于編程語言的文本格式來存儲和表示數(shù)據(jù)。簡潔和清晰的層次結(jié)構(gòu)使得 JSON 成為理想的數(shù)據(jù)交換語言。 易于人閱讀和編寫,同時也易于機器解析和生成,并有效地提升網(wǎng)絡(luò)傳輸效率。3.5 MPAndroidChartAndroid開源圖表庫MPAndroidChart的簡單用法。MPAndroidChart是一款基于Android的開源圖表庫,它可以實現(xiàn)在Android設(shè)備上繪制各種統(tǒng)計圖表。第四章 Android活動的生命周期Android平臺是個手機作業(yè)系統(tǒng)。撇掉其他功能不談,手機的特性,就是應(yīng)該能隨時在未完成目前動作的時候,暫停正在使用的功能,切換到接電話、接收短信模式,而且在接完電話回到應(yīng)用程序時,還希望能看到一樣的內(nèi)容?,F(xiàn)在用戶使用智能手機,大多已習慣使用多工的作業(yè)系統(tǒng)(如windowsMobile),可以在用手機聽音樂的同時,執(zhí)行其他多個程序。同時執(zhí)行多個程序有它的明顯好處,但也有它的缺點。每多執(zhí)行一個應(yīng)用程序,就會多耗費一些系統(tǒng)內(nèi)存,而手機里的內(nèi)存是相當有限的。當同時執(zhí)行的程序過多,或是關(guān)閉的程序沒有正確釋放掉內(nèi)存,系統(tǒng)運行時就會覺得越來越慢,甚至不穩(wěn)定。為了解決這個問題,Android引入了一個新的機制生命周期。Android應(yīng)用程序的生命周期是由Android框架進行管理,而不是由應(yīng)用程序直接控制。通常,每一個應(yīng)用程序(入口一般會是一個活動的onCreate方法),都會占據(jù)一個進程。當系統(tǒng)內(nèi)存即將不足的時候,會依照優(yōu)先級自動進行進程的回收。不管是使用者或開發(fā)者,都無法確定應(yīng)用程序何時會被回收。關(guān)于進程的生命周期將在下一節(jié)中介紹,本節(jié)主要介紹活動的生命周期。一個活動類別除了OnCreate方法之外,還預(yù)先定義了onPause(暫停)、OnResume(繼續(xù))等的基本方法,當從一個活動切換到另一個活動的時候,原來的活動將經(jīng)過一連串的狀態(tài)改變。開發(fā)者可以在程序中添加一些各狀態(tài)相對應(yīng)的流程,每次活動狀態(tài)改變時,就會執(zhí)行相對應(yīng)的流程。要讓用戶有好的使用體驗,活動需要在各個周期中負責保管狀態(tài)、恢復(fù)狀態(tài)、傳送資料等工作。4.1 活動的生命狀態(tài)Android的虛擬機是使用堆棧管理。主要有四種狀態(tài):(1) 活動狀態(tài)活動狀態(tài)是指用戶啟動應(yīng)用程序或活動后,活動運行中的狀態(tài)。在Android平臺上,同一個時刻只會有一個活動處于活動或運行狀態(tài)。其他的活動都處于未啟動、停止或是暫停的狀態(tài)。(2) 暫停狀態(tài)暫停狀態(tài)是指當活動暫時暗下來,退到背景畫面的狀態(tài)。當警告對話框或電話來了時,都會讓原來運行的活動退到背景畫面。新出現(xiàn)的警告對話框等界面元件蓋住了原來的活動畫面?;顒犹幵跁和顟B(tài)時,用戶無法與原活動互動。(3) 停止狀態(tài)停止狀態(tài)是指有其他活動正在執(zhí)行,而這個活動己經(jīng)離開屏幕,不再動作的狀態(tài)。通過按返回鍵,可以調(diào)出所有處于停止狀態(tài)的應(yīng)用程序列表。處于停止狀態(tài)的活動,還可以通過通知來喚醒。(4) 已回收或未啟動狀態(tài)已回收或未啟動狀態(tài)是指活動尚未被啟動、已經(jīng)被手動終止或己經(jīng)被系統(tǒng)回收的狀態(tài)。要手動終止活動,可以在程序中調(diào)用finish方法。如果是被系統(tǒng)回收,可能是因為內(nèi)存不足了,所以系統(tǒng)根據(jù)內(nèi)存不足時的回收規(guī)則,將處于停止狀態(tài)的活動所占用的內(nèi)存回收。圖 四-1Activity活動流程圖圖4-1所示的七個狀態(tài)又可以歸納成三組:(1) 資源分配(創(chuàng)建/銷毀)完整的活動生命周期由創(chuàng)建狀態(tài)開始,由銷毀狀態(tài)結(jié)束。創(chuàng)建時分配資源,銷毀時釋放資源。(2) 可見與不可見(啟動/重新啟動/停止)當活動運行到啟動狀態(tài)時,就可以在屏幕上看到這個活動。相反地,當活動運行到停止狀態(tài)時,這個活動就會從屏幕上消失。當用戶按下返回鍵回到上一個活動時,會先到重新啟動狀態(tài),再到一般的啟動狀態(tài)。(3) 用戶取得屏幕的控制權(quán)(繼續(xù)/暫停)當有個警告對話框、短信、電話等信息進入時,原來的活動會進入暫停狀態(tài),暫時放棄屏幕的控制權(quán),被中斷到背景去,將前景交給優(yōu)先級高的事件。當這些優(yōu)先級高的事件處理完后,活動就改進入繼續(xù)狀態(tài),此時又取得屏幕的控制權(quán)。4.2 活動的運作流程由實際運行來看,我們可以歸納出所有Android應(yīng)用程序都遵循的運作流程:(1) 一般啟動啟動一個活動的基本流程為onCreate一>onstart一>onResume。該流程首先分配資源給這個活動(創(chuàng)建狀態(tài)),然后將活動的內(nèi)容顯示到屏幕上(啟動狀態(tài));在一切就緒后,取得屏幕的控制權(quán)(恢復(fù)狀態(tài)),用戶可以開始使用這個程序。(2) 調(diào)用另一個活動調(diào)用另一個活動的基本流程為onpause(l)一>onCreate(2)一>onstart(2)一>0nResume(2)一>onStop(l)。該流程首先凍結(jié)原來的活動,再交出屏幕控制權(quán);直到活動2完成一般啟動流程后,活動1才會被停止。(3) 回到原來活動回到原來活動的基本流程為onPause(2)一>onRestart(1)一>onstart(l)一>onResume(1)一>onstop(2)一>onDestroy(2)。另外按返回鍵也可以回到原來的活動。(4) 退出結(jié)束退出結(jié)束的基本流程為onPause一>onStop一>onDestroy。如果程序中有直接調(diào)用finish方法來關(guān)閉活動的話,系統(tǒng)會跳過先凍結(jié)的階段,直接暫停,停止,然后銷毀。(5) 回收后再啟動回收后再啟動的基本流程為oncreate一>onstart一>onresume。如果被回收掉的活動一旦又重新被調(diào)用時,會像一般啟動一樣再次調(diào)用活動的onCreate方法。當在模擬器上已經(jīng)執(zhí)行過多個應(yīng)用程序,只要按下返回鍵,就會開啟最近一次開啟過的活動。所以如果要讓再次被創(chuàng)建的活動跟原來開啟過的一樣,那么在活動之間切換時,就要保存資料:即在每次活動運行到暫?;蛲V範顟B(tài)時先保存資料,然后在創(chuàng)建時將資料讀出來。第五章 餅圖賬單的設(shè)計與實現(xiàn)5.1 研究目標了解Android應(yīng)用程序的設(shè)計和開發(fā)過程;使用多種組件進行Android 平臺校園資訊軟件的開發(fā)。本軟件是基于Android Studio的開發(fā)環(huán)境,在Android平臺上的餅圖賬單軟件。5.2 實現(xiàn)步驟5.2.1 使用ViewPager+Fragment實現(xiàn)案例布局打開開發(fā)工具Android Studio,新建項目名為PieChart;并選擇API 為25,選擇布局文件為空;如下圖所示;圖 五-1新建項目圖 五-2選擇API圖 五-3選擇Acitvity布局修改相應(yīng)的activity布局代碼如下<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v4.view.ViewPager android:id="+id/vp_main" android:layout_width="match_parent" android:layout_height="match_parent" /></RelativeLayout>創(chuàng)建PieFragment、MonthBean類并在MainActivity文件中編寫相應(yīng)代碼利用ViewPager實現(xiàn)頁面的左右滑動。圖 五-4創(chuàng)建類文件5.2.2 Json數(shù)據(jù)解析、封裝、傳遞給Fragment在Json數(shù)據(jù)解析時需要將Json數(shù)據(jù)進行轉(zhuǎn)義在網(wǎng)絡(luò)下下載gson用來解析Json數(shù)據(jù)并傳遞給Fragment。public class MainActivity extends AppCompatActivity private ViewPager vpMain; private String mJson = ""date":"2016年5月","obj":"title":"外賣","value":34," + ""title":"娛樂","value":21,"title":"其他","value":45," + ""date":"2016年6月","obj":"title":"外賣","value":32," + ""title":"娛樂","value":22,"title":"其他","value":42," + ""date":"2016年7月","obj":"title":"外賣","value":34," + ""title":"娛樂","value":123,"title":"其他","value":24," + ""date":"2016年8月","obj":"title":"外賣","value":145," + ""title":"娛樂","value":123,"title":"其他","value":124" private ArrayList<MonthBean> mData; protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); vpMain = (ViewPager)findViewById(R.id.vp_main); initData(); initView(); private void initData() Gson gson= new Gson(); mData=gson.fromJson(mJson,new TypeToken<ArrayList<MonthBean>>().getType(); 在編寫代碼后在模擬器上運行如下圖所示:圖 五-5模擬器運行5.2.3 繪制賬單餅狀圖并顯示賬單數(shù)據(jù)在成功完成數(shù)據(jù)解析后,接下來應(yīng)該用餅狀圖將數(shù)據(jù)顯示出來利用的是當下最獲得餅狀圖框架:MP AndroidChart。可以利用該框架實現(xiàn)各種需要的餅圖效果可以在 下載使用。5.2.4 實現(xiàn)切換按鈕點擊事件(顯示其他月賬單界面)在PieFrgment中實現(xiàn)以下代碼來實現(xiàn)點擊餅圖時的旋轉(zhuǎn) public void onValueSelected(Entry e, int dataSetIndex, Highlight h) float proportion = 360f/mData.getSum(); float angle = 90-mData.obj.get(e.getXIndex().value*proportion/2-mData.getSum(e.getXIndex()*proportion; mChart.setRotationAngle(angle); updateDesText(e.getXIndex();下面是layout布局文件的顯示圖:圖 五-6Layout布局5.2.5 程序完成最后在對各項布局文件以及類文件的編寫后,得到主應(yīng)用程序的運行畫面如圖所示:圖 五-7運行結(jié)果第六章 主要結(jié)論經(jīng)過一個多月的努力,Android平臺餅圖賬單應(yīng)用終于完成了。由于對JAVA濃厚的興趣引發(fā)了我對Android的好奇心,從一開始什么都不懂一直摸索完成了這個軟件。 在這個過程中,我學(xué)會了很多知識,比如Android環(huán)境的搭建、Intent、Activity、Service、ContentProvider、Fragment等,但我學(xué)會的最重要的一點是,利用現(xiàn)有的資源去解決問題,在圖書館、在網(wǎng)絡(luò)上尋找答案。雖然,這個軟件目前運行良好,但是我認為代碼的健壯行還很差,在整個工程的構(gòu)思方面也不足,用戶操作界面還不夠靈活,這些問題還需要今后逐一解決。與此同時,這個軟件還可以進一步擴展,例如數(shù)據(jù)獲取、“數(shù)據(jù)錄入”等,使功能更加強大,帶給用戶更好的體驗與生活的便捷。參考文獻1 GongLei,,ZhouCong,Development and Research of Mobile Termination Application Basen AndroidJ.Computer And Modernization,2008。2 Shane Conde,Android Wireless Application DevelopmentM,AddisonWesley,20103 Enck,W,Ongtang M,McDaniel P,Understanding Android SecurityJ,Security&Priva,IEEE,2009,7(1),P50-574 Sandeep Kumar,Location Based Services using AndroidC,Internet Multimedia Servis Architecture and Applications (IMSAA),2009,IEEE International Conference,P1-55 劉昌平,范明鈺,Android手機的輕量級訪問控制J,人民郵電出版社,20106 楊豐盛,Android應(yīng)用開發(fā)揭秘M,北京機械工業(yè)出版社,20107 余志龍,陳昱勛,鄭名杰,Android SDK開發(fā)范例大全M,北京人民郵電出版社2010致謝感謝大家一貫如一的專注和無私的付出,才使得項目得以完整結(jié)束。在工貿(mào)學(xué)院度過了三年的緊張學(xué)習時光,系統(tǒng)地學(xué)習了移動開發(fā)的各方面知識,深深的佩服各位專業(yè)老師的學(xué)識,從中我不僅學(xué)習到編程知識,而且學(xué)到很多做人、做事、做學(xué)問的道理,在此表示真摯的謝意。在論文即將完成之際,我要感謝我的導(dǎo)師武云飛老師。在論文撰寫的整個過程中,從論文選題、到撰寫開題報告、最后到正文撰寫,武老師都提出了很多寶貴意見。武老師指出的每一個問題,指導(dǎo)的每一個思路,都使我有茅塞頓開之感。給我感受最深的是武老師嚴謹治學(xué)的態(tài)度,無論從格式規(guī)范、論文要點、還是文章結(jié)構(gòu),武老師都不厭其煩,給予我及時的幫助,使我能夠最后順利完成論文寫作工作。老師淵博的專業(yè)知識,嚴謹?shù)闹螌W(xué)態(tài)度,精益求精的工作作風,誨人不倦的高尚師德,嚴以律己、寬以待人的崇高風范,樸實無華、平易近人的人格魅力對我影響深遠。我相信,做項目的這段的日子對大家來說一定是一個痛苦但美好的回憶?!伴L風破浪會有時,直掛云帆濟滄海?!边@是我少年時最喜歡的詩句。就用這話作為這篇論文的一個結(jié)尾,也是一段生活的結(jié)束。希望自己能夠繼續(xù)少年時的夢想,永不放棄。附錄在設(shè)置餅圖賬單主界面時餅圖下方的TextView 文本框的寬度應(yīng)該與上方餅圖的直徑相等,可以設(shè)置為餅圖寬度的80%,也可以通過線性布局制作也可以實現(xiàn)。25

注意事項

本文(基于Android Studio的餅圖賬單的設(shè)計與開發(fā)-畢業(yè)論文)為本站會員(仙***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!