最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

菜譜APP源碼和設計報告

2023-01-18 01:11 作者:考研保研直通車  | 我要投稿


菜譜APP源碼和設計報告

data = mSQlite.getAllDATA(); 判斷date的長度,用.size()進行長度的判斷。 3. 首先點擊我們需要的菜譜,進行到菜品的詳情頁面,我們要先制作一個模板,通過在集合的數(shù)據(jù),依次循環(huán),將數(shù)據(jù)放入進去,同時還需要一個簡單的適配器,listView展示給用戶看的時候,需要設置適配器BaseAdapter。 // 決定了ListView列表展示的行數(shù) @Override?public?int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int?position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder?holder?= null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } 系統(tǒng)詳細設計 4.1結構設計(文件結構、數(shù)據(jù)結構) 軟件系統(tǒng)操作流程的設計目的是簡化設計流程,更加方便日后開發(fā)程序人員進行更好的設計相關的軟件開發(fā)。當然這樣的設計為以后程序開發(fā)人員的開發(fā)設計和用戶的使用感都有很大的關系。因此,系統(tǒng)操作圖、注冊流程圖、登錄流程圖顯得尤為重要。如圖所示。 系統(tǒng)的安全性非常重要,所以您需要登錄才能登錄,不進行注冊您就不能使用主賬戶頁面,如圖所示。 4.2函數(shù)設計 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password?TEXT)”); } 這邊是數(shù)據(jù)庫的登錄和注冊的設計,后面的信息采用的是 系統(tǒng)實現(xiàn) 5.1運行結果 5.2關鍵代碼 數(shù)據(jù)庫 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password TEXT)”); } 適配器 // 決定了ListView列表展示的行數(shù) @Override public int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } // 加載控件顯示的內(nèi)容 // 獲取集合指定位置的數(shù)據(jù) FoodBean foodBean = mDatas.get(position); holder.titleTv.setText(foodBean.getTitle()); holder.notTv.setText(“材料:”+foodBean.getDesc()); holder.iv.setImageResource(foodBean.getPicId()); return convertView; } class ViewHolder{ ImageView iv; TextView titleTv,notTv; public ViewHolder(View view){ iv = view.findViewById(R.id.item_info_iv); titleTv = view.findViewById(R.id.item_info_title); notTv = view.findViewById(R.id.item_info_tv_notitle); } } } 登錄、注冊 public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(password)) { ArrayList data = mSQlite.getAllDATA(); boolean userdata = false; for (int i = 0; i < data.size(); i++) { User user= data.get(i); //可存儲賬號數(shù)量 if (name.equals(user.getName()) && password.equals(user.getPassword())) { userdata = true; break; } else { userdata = false; } } if (userdata) { Toast.makeText(MainActivity.this, “登錄成功”, Toast.LENGTH_SHORT).show(); Intent?intent?= new Intent(MainActivity.this, Home.class); intent.putExtra(“username”,name); intent.putExtra(“password”,password); //展示賬號密碼功能 startActivity(intent); finish(); } else { Toast.makeText(MainActivity.this, “用戶名或密碼不正確”, Toast.LENGTH_SHORT).show(); } } else { Toast.makeText(MainActivity.this, “用戶名或密碼不能為空”, Toast.LENGTH_SHORT).show(); } } }); mSQlite = new SQlite(MainActivity.this); } protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); reday = findViewById(R.id.reday); back = findViewById(R.id.back); username = findViewById(R.id.userName); userpassword =findViewById( R.id.userpassword); back.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Register.this,MainActivity.class); startActivity(intent); finish(); } }); reday.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if(!TextUtils.isEmpty(name)&&!TextUtils.isEmpty(password)){ mSQlite.add(name,password); Intent intent1 = new Intent(Register.this,MainActivity.class); startActivity(intent1); finish(); Toast.makeText(Register.this,”注冊成功”,Toast.LENGTH_SHORT).show(); }else {Toast.makeText(Register.this,”信息不完備,注冊失敗”,Toast.LENGTH_SHORT).show();} } }); mSQlite = new SQlite(Register.this); } } 結論 在這個過程中,我學到了很多,我知道我還有很多經(jīng)驗要學,我的專業(yè)技能還不夠。當涉及到基本的計算機知識時,許多事情可以改進,以進一步優(yōu)化設計。作為一名合格的項目協(xié)調(diào)員,我將繼續(xù)解決這些缺點。尤其是計算機系統(tǒng)的底層得到了優(yōu)化;簡單的關系數(shù)據(jù)庫可能不滿足以下要求。 參考文獻 [1] 劉奇付,李紫艷.基于Android平臺的大學生生活費手機管理系統(tǒng)設計與實現(xiàn)[J].軟件導刊,2015,14(9):141-143. [2]周李達,鄧璐凡,王中霖,等.基于Android的大學生出行系統(tǒng)設計與實現(xiàn)[J].信息與電腦:理論版,2015(19):99-101. [3]王亞維,徐霞.基于Android的大學生兼職系統(tǒng)設計與實現(xiàn)[J].地理空間信息,2013,11(2):98-100. [4] 韋俊星,曾祥寶,黃美素,等.基于安卓系統(tǒng)的大學生黨課培訓系統(tǒng)客戶端的設計與實現(xiàn)[J].中國新通信,2015,17(11):116-117. [5] 盧昕,楊晞.基于VFP6.0收款記賬管理系統(tǒng)的實現(xiàn)[J].電腦編程技巧與維護,2014(6):48-49. [6] 趙世祥,楊昆,朱彥輝,等.基于Android平臺的大學生課程計劃管理系統(tǒng)[J].通訊世界,2016(1):113-114. [7] 馮璐.一個”網(wǎng)絡記賬本”的設計與實現(xiàn)——基于PHP+MySQL的收支管理系統(tǒng)[J].電腦知識與技術:學術交流,2007,4(19):20-22. [8] O’Hanlon J,Peasnell K. Wall Street’s contribution to management accounting: the Stern StewartEVA financial management system[J]. Management Accounting Research, 1998,9(4):421-444. [9] 許榮豐.財務綜合管理系統(tǒng)運行中存在的問題[J].吉林金融研究,2008(3):74-74. [10]李斌.會計信息化管理——記賬憑證的幾點新認識[J]. 中國鄉(xiāng)鎮(zhèn)企業(yè)會計, 2009(2):122-124. [11]盧照,王琦,王華.基于Android平臺的大學生實用軟件設計開發(fā)[J].微型機與應用,2015(24):19-20. [12]陳夢娜,藍建平.基于Android的大學生文明寢室測評系統(tǒng)設計與實現(xiàn)[J].網(wǎng)絡安全技術與應用,2014(3):64-65. [13]黃天上,姚世強,裴冬梅,等.基于Android平臺的大學生校園服務信息實時發(fā)布系統(tǒng)的研究[J].教育,2015(10):218-218. [14]吳冬芹,陳子健.基于GTD的大學生時間管理系統(tǒng)設計與實現(xiàn)[J].電腦編程技巧與維護,2015(16):44-45. [15]王秋麗.我國財務軟件的現(xiàn)狀及發(fā)展趨勢[J].山西經(jīng)濟管理干部學院學報,2012,10(1): 43-45.” title=”《移動互聯(lián)開發(fā)》 課程作業(yè) 學 院: 班 級: 學 號: 姓 名: 日 期: 設計要求(提交文檔時需刪除): 1.本課程設計作為《Android 程序設計》的期末考查內(nèi)容。 2.任務安排: (1)確定內(nèi)容:11月3日前將確定內(nèi)容,雷同內(nèi)容進行微調(diào)(功能,實習,界面)。 (2)任務完成:12月2日,將計劃完成的內(nèi)容提交。 (3)程序演示:程序演示,錄制演示視頻。介紹程序的整體結構,實現(xiàn)方法,涉及到的技術,虛擬器演示。時長5-10分鐘。 3.知識點要求包括但不限于以下內(nèi)容: (1)界面設計; (2)事件處理; (3)頁面跳轉; (4)數(shù)據(jù)存儲 4.課程設計的主體包括 (1)封面 (2)目錄 (3)正文 1)應用平臺介紹,開發(fā)版本,型號 2)需求分析 3)系統(tǒng)功能設計: 4)系統(tǒng)實現(xiàn):原型設計,界面設計,系統(tǒng)結構,涉及到的關鍵技術,功能實現(xiàn)及關鍵代碼 5)運行效果。 (4)結論 (5)參考文獻 注意: 程序設計鼓勵自主完成;設計功能完備,程序運行流暢無誤。 代碼部分需要進行必要的注釋。 文檔撰寫應注意排版美觀大方,語言通順,無錯別字。若有同學的設計基本雷同的都定位不及格。 重要事項: 提交內(nèi)容: 文檔的電子版 完整代碼的電子版; 演示視頻(本人需入鏡) 電子版提交:學生個人將所有提交內(nèi)容放在“學號+姓名”的文件夾中; 例如對于學號為20110309,姓名為“王琦”的同學,壓縮文件名為“20110309王琦” 提交時間與地點: 電子版:壓縮后,提交至課程中心文檔。 程序演示:后續(xù)通知 目錄 引言1 1.1 項目介紹1 1.2 開發(fā)環(huán)境1 系統(tǒng)需求分析1 2.1 用戶需求1 2.2 功能需求1 2.3 性能需求1 系統(tǒng)總體設計1 3.1 功能設計1 3.1.1 功能劃分(系統(tǒng)總體框架)2 3.1.2 功能說明3 3.2 系統(tǒng)數(shù)據(jù)流程4 3.2.1 系統(tǒng)數(shù)據(jù)流程圖4 3.2.2 數(shù)據(jù)流程說明5 3.3 界面設計5 3.3.1 界面布局設計5 3.3.2 界面切換描述6 系統(tǒng)詳細設計6 4.1 結構設計(含文件結構、數(shù)據(jù)結構)6 4.2 函數(shù)設計6 系統(tǒng)實現(xiàn)7 5.1 運行結果7 5.2 關鍵代碼8 結論16 參考文獻16 1概述(一級標題,黑體,小三號字,段前、段后間距為1行) 最近的疫情雖然已經(jīng)出現(xiàn)了好轉,但是外賣平臺上提供服務的商家還是屈指可數(shù),再加上點外賣仍舊存在一定病毒傳播的風險,因此越來越多從未做飯的人都開始嘗試在家做飯。這直接導致了許多食譜類APP的流量猛增,開始在互聯(lián)網(wǎng)上掀起一股全民做飯的熱潮。下面我們來分析一下食譜類APP的發(fā)展前景。 現(xiàn)如今是智能手機快速發(fā)展的新時代。幾乎在社會中的每個人多多少少都會使用智能手機和電腦,因為它們可以使我們的生活舒適、快捷和更加方便。對比國內(nèi)外的許多人類的日常生產(chǎn)生活中,人們都幾乎都已經(jīng)離不開智能手機了。隨著個人的消費水平不斷提高和享受生活,幾乎很少人能掌握日常生活到底消費在哪些方面,食譜類APP已經(jīng)無法滿足人們?nèi)找嬖鲩L的需求,生活中許許多多的收支和消費情況,造成人們無法清晰的了解日常生活中的各種消費。如果用戶在智能手機中下載一個適合自己的食譜類APP,可以讓用戶日常的做飯都得到歸類和管理,能夠使得用戶方便的記錄下自己的食譜類APP的同時,也能體會不一樣的快樂。 1.1選題背景(二級標題,黑體,四號字,段前、段后間距為1行) 疫情期間,許多臨時抱佛腳查食譜開始學做飯的人不在少數(shù)。下面我們來看看各個平臺的數(shù)據(jù)統(tǒng)計,比如燃財經(jīng)查詢七麥數(shù)據(jù)2020年1月移動應用增長榜發(fā)現(xiàn),美食佳飲子分類前20名中,食譜類APP占4席。食譜分享平臺“網(wǎng)上廚房”后臺的數(shù)據(jù)顯示,春節(jié)期間,三四線城市的新增用戶有明顯增長。網(wǎng)上廚房CEO楊洋稱,受疫情影響,與大量一線市的務工人員滯留三四線城市有直接關系。 年輕一代不做飯的原因,除了工作忙,時間有限,更多的是從小在家都是爸爸媽媽做飯,自己不會做,這次疫情期間空余時間變多,很多人發(fā)現(xiàn)跟著食譜學做飯不是太難的事情,并逐漸在做飯中發(fā)現(xiàn)了許多趣味,而不僅僅只是想填飽肚子?,F(xiàn)在曬廚藝還滿足了一部分年輕人的社交展示需求,朋友圈已經(jīng)成為不少人廚藝大比拼的地方。因為每天刷時間最長的還是疫情相關的新聞,需要轉移注意力來調(diào)節(jié)心情,下廚既是一個真治愈的過程,還能滿足自己填飽肚子的需求。 1.2選題意義 總的來講,食譜類APP的發(fā)展前景還是不錯的。雖然疫情即將過去。但是這次食譜類APP得到了一次免費的引流拉新機會,還提高了相關APP的知名度。因此這次疫情更像是一場大考,只有真正為用戶提供了有價值內(nèi)容的產(chǎn)品,才能一直得到用戶的青睞。 1.3開發(fā)工具及技術 1.3.1 Android stduio4.1;JDK1.8; 系統(tǒng)需求分析 2.1用戶需求 該系統(tǒng)使用Android studio開發(fā)平臺進行軟件系統(tǒng)的開發(fā),Android studio的界面簡單和具有強大的兼容性的各方面的優(yōu)點。開發(fā)者可以更好的進行軟件的開發(fā)和日后的相關維護。 該系統(tǒng)同時具有操作簡單、操作方便、互換性好、較為直觀等特點,這就是為什么我們可以選擇Android studio來開發(fā)一個系統(tǒng)。 2.2功能需求 為了使用戶體驗感更好,開發(fā)人員會事先指定一些約束規(guī)則來進行行為的約束。開發(fā)者一般做出要求如下:用戶管理家菜譜類APP軟件,當用戶輸入已經(jīng)注冊過的用戶名和密碼,用戶就會進入到SQlite數(shù)據(jù)庫當中。但是如果用戶輸入的數(shù)據(jù)沒有與數(shù)據(jù)庫中的數(shù)據(jù)比對發(fā)現(xiàn)并沒有找到,用戶不得進行相關信息的注冊和登錄。這樣它的安全顯然非??煽亢桶踩?。 2.3性能需求 軟件系統(tǒng)分析主要包括技術、經(jīng)濟、運營和開發(fā)方面的研究,從而以確保信息資源和投入資金的合理利用,避免方案設計中存在的各種各樣問題,幫助我們更好地完成軟件實施方案。換句話說,技術支持和資金支持分析決定了項目完成的可能性,可行性分析是實現(xiàn)項目階段——從開始到中間到結束——的必須所要面臨途徑。我主要根據(jù)實際需要情況進行了較為全面的軟件系統(tǒng)分析,具體如下。 本文從一個易于理解的分析方案開始,它將幫助用戶處理自己日常生活中所遇到的問題,查看硬件和軟件是否能滿足開發(fā)者的任務需求。 作為一名計算機專業(yè)的學生,我在學校學到了很多編程知識,比如Android studio和Java等相關技術。經(jīng)過反復驗證方案和規(guī)劃方案,從系統(tǒng)結構到編程語言的選擇,再到最終選定的技術,都在尋找最優(yōu)可以實現(xiàn)這門技術的可行性的研究。 系統(tǒng)總體設計 3.1功能設計 3.1.1功能規(guī)劃(系統(tǒng)總體框架) 本系統(tǒng)按用戶訪問菜譜APP軟件。 當用戶進入軟件系統(tǒng)的時候,系統(tǒng)只為系統(tǒng)存在用戶提供登錄操作,如果是第一次進入需要注冊賬號信息。當用戶注冊完畢后,就可以訪問菜譜APP軟件。 當用戶進入用戶界面訪問時,用戶可以根據(jù)模糊查詢,進行對自己喜歡的菜譜進行查詢,查詢過后點擊進入,就可以看到具體的做法了。然后根據(jù)菜譜的做法,進行美味食品的制作。 3.1.2功能說明 用戶進入菜譜APP軟件系統(tǒng)的時候,系統(tǒng)只為系統(tǒng)存在用戶提供登錄和注冊的相關操作,初始的用戶需要進行賬號的注冊,否則登錄不了。注冊完畢后,用戶就可以打開菜譜APP,菜譜APP可以進行相關菜品的查詢,并且也有該軟件開發(fā)的一些基本信息。 當用戶進入用戶界面訪問時,用戶可以根據(jù)模糊查詢,進行對自己喜歡的菜譜進行查詢,查詢過后點擊進入,就可以看到具體的做法了。然后根據(jù)菜譜的做法,進行美味食品的制作。 3.3界面設計 3.3.1界面布局設計 登錄界面 注冊界面 主界面 搜索界面 軟件詳情 菜品詳情 3.3.2界面切換描述 1.登錄到注冊頁面的切換 Intent intent5 = new Intent(MainActivity.this, Register.class); startActivity(intent5); finish(); 判斷是否數(shù)據(jù)之前有沒有注冊過 boolean userdata = false; for (int i = 0; i < data.size(); i++) { User user= data.get(i); //可存儲賬號數(shù)量 if (name.equals(user.getName()) && password.equals(user.getPassword())) { userdata = true; break; } else { userdata = false; } } 把注冊的數(shù)據(jù)都放到userdata當中,ArrayList data = mSQlite.getAllDATA(); 判斷date的長度,用.size()進行長度的判斷。 3. 首先點擊我們需要的菜譜,進行到菜品的詳情頁面,我們要先制作一個模板,通過在集合的數(shù)據(jù),依次循環(huán),將數(shù)據(jù)放入進去,同時還需要一個簡單的適配器,listView展示給用戶看的時候,需要設置適配器BaseAdapter。 // 決定了ListView列表展示的行數(shù) @Override public int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } 系統(tǒng)詳細設計 4.1結構設計(文件結構、數(shù)據(jù)結構) 軟件系統(tǒng)操作流程的設計目的是簡化設計流程,更加方便日后開發(fā)程序人員進行更好的設計相關的軟件開發(fā)。當然這樣的設計為以后程序開發(fā)人員的開發(fā)設計和用戶的使用感都有很大的關系。因此,系統(tǒng)操作圖、注冊流程圖、登錄流程圖顯得尤為重要。如圖所示。 系統(tǒng)的安全性非常重要,所以您需要登錄才能登錄,不進行注冊您就不能使用主賬戶頁面,如圖所示。 4.2函數(shù)設計 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password TEXT)”); } 這邊是數(shù)據(jù)庫的登錄和注冊的設計,后面的信息采用的是 系統(tǒng)實現(xiàn) 5.1運行結果 5.2關鍵代碼 數(shù)據(jù)庫 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password TEXT)”); } 適配器 // 決定了ListView列表展示的行數(shù) @Override public int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } // 加載控件顯示的內(nèi)容 // 獲取集合指定位置的數(shù)據(jù) FoodBean foodBean = mDatas.get(position); holder.titleTv.setText(foodBean.getTitle()); holder.notTv.setText(“材料:”+foodBean.getDesc()); holder.iv.setImageResource(foodBean.getPicId()); return convertView; } class ViewHolder{ ImageView iv; TextView titleTv,notTv; public ViewHolder(View view){ iv = view.findViewById(R.id.item_info_iv); titleTv = view.findViewById(R.id.item_info_title); notTv = view.findViewById(R.id.item_info_tv_notitle); } } } 登錄、注冊 public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(password)) { ArrayList data = mSQlite.getAllDATA(); boolean userdata = false; for (int i = 0; i < data.size(); i++) { User user= data.get(i); //可存儲賬號數(shù)量 if (name.equals(user.getName()) && password.equals(user.getPassword())) { userdata = true; break; } else { userdata = false; } } if (userdata) { Toast.makeText(MainActivity.this, “登錄成功”, Toast.LENGTH_SHORT).show(); Intent intent = new Intent(MainActivity.this, Home.class); intent.putExtra(“username”,name); intent.putExtra(“password”,password); //展示賬號密碼功能 startActivity(intent); finish(); } else { Toast.makeText(MainActivity.this, “用戶名或密碼不正確”, Toast.LENGTH_SHORT).show(); } } else { Toast.makeText(MainActivity.this, “用戶名或密碼不能為空”, Toast.LENGTH_SHORT).show(); } } }); mSQlite = new SQlite(MainActivity.this); } protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); reday = findViewById(R.id.reday); back = findViewById(R.id.back); username = findViewById(R.id.userName); userpassword =findViewById( R.id.userpassword); back.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Register.this,MainActivity.class); startActivity(intent); finish(); } }); reday.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if(!TextUtils.isEmpty(name)&&!TextUtils.isEmpty(password)){ mSQlite.add(name,password); Intent intent1 = new Intent(Register.this,MainActivity.class); startActivity(intent1); finish(); Toast.makeText(Register.this,”注冊成功”,Toast.LENGTH_SHORT).show(); }else {Toast.makeText(Register.this,”信息不完備,注冊失敗”,Toast.LENGTH_SHORT).show();} } }); mSQlite = new SQlite(Register.this); } } 結論 在這個過程中,我學到了很多,我知道我還有很多經(jīng)驗要學,我的專業(yè)技能還不夠。當涉及到基本的計算機知識時,許多事情可以改進,以進一步優(yōu)化設計。作為一名合格的項目協(xié)調(diào)員,我將繼續(xù)解決這些缺點。尤其是計算機系統(tǒng)的底層得到了優(yōu)化;簡單的關系數(shù)據(jù)庫可能不滿足以下要求。 參考文獻 [1] 劉奇付,李紫艷.基于Android平臺的大學生生活費手機管理系統(tǒng)設計與實現(xiàn)[J].軟件導刊,2015,14(9):141-143. [2]周李達,鄧璐凡,王中霖,等.基于Android的大學生出行系統(tǒng)設計與實現(xiàn)[J].信息與電腦:理論版,2015(19):99-101. [3]王亞維,徐霞.基于Android的大學生兼職系統(tǒng)設計與實現(xiàn)[J].地理空間信息,2013,11(2):98-100. [4] 韋俊星,曾祥寶,黃美素,等.基于安卓系統(tǒng)的大學生黨課培訓系統(tǒng)客戶端的設計與實現(xiàn)[J].中國新通信,2015,17(11):116-117. [5] 盧昕,楊晞.基于VFP6.0收款記賬管理系統(tǒng)的實現(xiàn)[J].電腦編程技巧與維護,2014(6):48-49. [6] 趙世祥,楊昆,朱彥輝,等.基于Android平臺的大學生課程計劃管理系統(tǒng)[J].通訊世界,2016(1):113-114. [7] 馮璐.一個”網(wǎng)絡記賬本”的設計與實現(xiàn)——基于PHP+MySQL的收支管理系統(tǒng)[J].電腦知識與技術:學術交流,2007,4(19):20-22. [8] O’Hanlon J,Peasnell K. Wall Street’s contribution to management accounting: the Stern StewartEVA financial management system[J]. Management Accounting Research, 1998,9(4):421-444. [9] 許榮豐.財務綜合管理系統(tǒng)運行中存在的問題[J].吉林金融研究,2008(3):74-74. [10]李斌.會計信息化管理——記賬憑證的幾點新認識[J]. 中國鄉(xiāng)鎮(zhèn)企業(yè)會計, 2009(2):122-124. [11]盧照,王琦,王華.基于Android平臺的大學生實用軟件設計開發(fā)[J].微型機與應用,2015(24):19-20. [12]陳夢娜,藍建平.基于Android的大學生文明寢室測評系統(tǒng)設計與實現(xiàn)[J].網(wǎng)絡安全技術與應用,2014(3):64-65. [13]黃天上,姚世強,裴冬梅,等.基于Android平臺的大學生校園服務信息實時發(fā)布系統(tǒng)的研究[J].教育,2015(10):218-218. [14]吳冬芹,陳子健.基于GTD的大學生時間管理系統(tǒng)設計與實現(xiàn)[J].電腦編程技巧與維護,2015(16):44-45. [15]王秋麗.我國財務軟件的現(xiàn)狀及發(fā)展趨勢[J].山西經(jīng)濟管理干部學院學報,2012,10(1): 43-45.” /> 《移動互聯(lián)開發(fā)》 課程作業(yè) 學 院: 班 級: 學 號: 姓 名: 日 期: 設計要求(提交文檔時需刪除): 1.本課程設計作為《Android 程序設計》的期末考查內(nèi)容。 2.任務安排: (1)確定內(nèi)容:11月3日前將確定內(nèi)容,雷同內(nèi)容進行微調(diào)(功能,實習,界面)。 (2)任務完成:12月2日,將計劃完成的內(nèi)容提交。 (3)程序演示:程序演示,錄制演示視頻。介紹程序的整體結構,實現(xiàn)方法,涉及到的技術,虛擬器演示。時長5-10分鐘。 3.知識點要求包括但不限于以下內(nèi)容: (1)界面設計; (2)事件處理; (3)頁面跳轉; (4)數(shù)據(jù)存儲 4.課程設計的主體包括 (1)封面 (2)目錄 (3)正文 1)應用平臺介紹,開發(fā)版本,型號 2)需求分析 3)系統(tǒng)功能設計: 4)系統(tǒng)實現(xiàn):原型設計,界面設計,系統(tǒng)結構,涉及到的關鍵技術,功能實現(xiàn)及關鍵代碼 5)運行效果。 (4)結論 (5)參考文獻 注意: 程序設計鼓勵自主完成;設計功能完備,程序運行流暢無誤。 代碼部分需要進行必要的注釋。 文檔撰寫應注意排版美觀大方,語言通順,無錯別字。若有同學的設計基本雷同的都定位不及格。 重要事項: 提交內(nèi)容: 文檔的電子版 完整代碼的電子版; 演示視頻(本人需入鏡) 電子版提交:學生個人將所有提交內(nèi)容放在“學號+姓名”的文件夾中; 例如對于學號為20110309,姓名為“王琦”的同學,壓縮文件名為“20110309王琦” 提交時間與地點: 電子版:壓縮后,提交至課程中心文檔。 程序演示:后續(xù)通知 目錄 引言1 1.1 項目介紹1 1.2 開發(fā)環(huán)境1 系統(tǒng)需求分析1 2.1 用戶需求1 2.2 功能需求1 2.3 性能需求1 系統(tǒng)總體設計1 3.1 功能設計1 3.1.1 功能劃分(系統(tǒng)總體框架)2 3.1.2 功能說明3 3.2 系統(tǒng)數(shù)據(jù)流程4 3.2.1 系統(tǒng)數(shù)據(jù)流程圖4 3.2.2 數(shù)據(jù)流程說明5 3.3 界面設計5 3.3.1 界面布局設計5 3.3.2 界面切換描述6 系統(tǒng)詳細設計6 4.1 結構設計(含文件結構、數(shù)據(jù)結構)6 4.2 函數(shù)設計6 系統(tǒng)實現(xiàn)7 5.1 運行結果7 5.2 關鍵代碼8 結論16 參考文獻16 1概述(一級標題,黑體,小三號字,段前、段后間距為1行) 最近的疫情雖然已經(jīng)出現(xiàn)了好轉,但是外賣平臺上提供服務的商家還是屈指可數(shù),再加上點外賣仍舊存在一定病毒傳播的風險,因此越來越多從未做飯的人都開始嘗試在家做飯。這直接導致了許多食譜類APP的流量猛增,開始在互聯(lián)網(wǎng)上掀起一股全民做飯的熱潮。下面我們來分析一下食譜類APP的發(fā)展前景。 現(xiàn)如今是智能手機快速發(fā)展的新時代。幾乎在社會中的每個人多多少少都會使用智能手機和電腦,因為它們可以使我們的生活舒適、快捷和更加方便。對比國內(nèi)外的許多人類的日常生產(chǎn)生活中,人們都幾乎都已經(jīng)離不開智能手機了。隨著個人的消費水平不斷提高和享受生活,幾乎很少人能掌握日常生活到底消費在哪些方面,食譜類APP已經(jīng)無法滿足人們?nèi)找嬖鲩L的需求,生活中許許多多的收支和消費情況,造成人們無法清晰的了解日常生活中的各種消費。如果用戶在智能手機中下載一個適合自己的食譜類APP,可以讓用戶日常的做飯都得到歸類和管理,能夠使得用戶方便的記錄下自己的食譜類APP的同時,也能體會不一樣的快樂。 1.1選題背景(二級標題,黑體,四號字,段前、段后間距為1行) 疫情期間,許多臨時抱佛腳查食譜開始學做飯的人不在少數(shù)。下面我們來看看各個平臺的數(shù)據(jù)統(tǒng)計,比如燃財經(jīng)查詢七麥數(shù)據(jù)2020年1月移動應用增長榜發(fā)現(xiàn),美食佳飲子分類前20名中,食譜類APP占4席。食譜分享平臺“網(wǎng)上廚房”后臺的數(shù)據(jù)顯示,春節(jié)期間,三四線城市的新增用戶有明顯增長。網(wǎng)上廚房CEO楊洋稱,受疫情影響,與大量一線市的務工人員滯留三四線城市有直接關系。 年輕一代不做飯的原因,除了工作忙,時間有限,更多的是從小在家都是爸爸媽媽做飯,自己不會做,這次疫情期間空余時間變多,很多人發(fā)現(xiàn)跟著食譜學做飯不是太難的事情,并逐漸在做飯中發(fā)現(xiàn)了許多趣味,而不僅僅只是想填飽肚子?,F(xiàn)在曬廚藝還滿足了一部分年輕人的社交展示需求,朋友圈已經(jīng)成為不少人廚藝大比拼的地方。因為每天刷時間最長的還是疫情相關的新聞,需要轉移注意力來調(diào)節(jié)心情,下廚既是一個真治愈的過程,還能滿足自己填飽肚子的需求。 1.2選題意義 總的來講,食譜類APP的發(fā)展前景還是不錯的。雖然疫情即將過去。但是這次食譜類APP得到了一次免費的引流拉新機會,還提高了相關APP的知名度。因此這次疫情更像是一場大考,只有真正為用戶提供了有價值內(nèi)容的產(chǎn)品,才能一直得到用戶的青睞。 1.3開發(fā)工具及技術 1.3.1 Android stduio4.1;JDK1.8; 系統(tǒng)需求分析 2.1用戶需求 該系統(tǒng)使用Android studio開發(fā)平臺進行軟件系統(tǒng)的開發(fā),Android studio的界面簡單和具有強大的兼容性的各方面的優(yōu)點。開發(fā)者可以更好的進行軟件的開發(fā)和日后的相關維護。 該系統(tǒng)同時具有操作簡單、操作方便、互換性好、較為直觀等特點,這就是為什么我們可以選擇Android studio來開發(fā)一個系統(tǒng)。 2.2功能需求 為了使用戶體驗感更好,開發(fā)人員會事先指定一些約束規(guī)則來進行行為的約束。開發(fā)者一般做出要求如下:用戶管理家菜譜類APP軟件,當用戶輸入已經(jīng)注冊過的用戶名和密碼,用戶就會進入到SQlite數(shù)據(jù)庫當中。但是如果用戶輸入的數(shù)據(jù)沒有與數(shù)據(jù)庫中的數(shù)據(jù)比對發(fā)現(xiàn)并沒有找到,用戶不得進行相關信息的注冊和登錄。這樣它的安全顯然非常可靠和安全。 2.3性能需求 軟件系統(tǒng)分析主要包括技術、經(jīng)濟、運營和開發(fā)方面的研究,從而以確保信息資源和投入資金的合理利用,避免方案設計中存在的各種各樣問題,幫助我們更好地完成軟件實施方案。換句話說,技術支持和資金支持分析決定了項目完成的可能性,可行性分析是實現(xiàn)項目階段——從開始到中間到結束——的必須所要面臨途徑。我主要根據(jù)實際需要情況進行了較為全面的軟件系統(tǒng)分析,具體如下。 本文從一個易于理解的分析方案開始,它將幫助用戶處理自己日常生活中所遇到的問題,查看硬件和軟件是否能滿足開發(fā)者的任務需求。 作為一名計算機專業(yè)的學生,我在學校學到了很多編程知識,比如Android studio和Java等相關技術。經(jīng)過反復驗證方案和規(guī)劃方案,從系統(tǒng)結構到編程語言的選擇,再到最終選定的技術,都在尋找最優(yōu)可以實現(xiàn)這門技術的可行性的研究。 系統(tǒng)總體設計 3.1功能設計 3.1.1功能規(guī)劃(系統(tǒng)總體框架) 本系統(tǒng)按用戶訪問菜譜APP軟件。 當用戶進入軟件系統(tǒng)的時候,系統(tǒng)只為系統(tǒng)存在用戶提供登錄操作,如果是第一次進入需要注冊賬號信息。當用戶注冊完畢后,就可以訪問菜譜APP軟件。 當用戶進入用戶界面訪問時,用戶可以根據(jù)模糊查詢,進行對自己喜歡的菜譜進行查詢,查詢過后點擊進入,就可以看到具體的做法了。然后根據(jù)菜譜的做法,進行美味食品的制作。 3.1.2功能說明 用戶進入菜譜APP軟件系統(tǒng)的時候,系統(tǒng)只為系統(tǒng)存在用戶提供登錄和注冊的相關操作,初始的用戶需要進行賬號的注冊,否則登錄不了。注冊完畢后,用戶就可以打開菜譜APP,菜譜APP可以進行相關菜品的查詢,并且也有該軟件開發(fā)的一些基本信息。 當用戶進入用戶界面訪問時,用戶可以根據(jù)模糊查詢,進行對自己喜歡的菜譜進行查詢,查詢過后點擊進入,就可以看到具體的做法了。然后根據(jù)菜譜的做法,進行美味食品的制作。 3.3界面設計 3.3.1界面布局設計 登錄界面 注冊界面 主界面 搜索界面 軟件詳情 菜品詳情 3.3.2界面切換描述 1.登錄到注冊頁面的切換 Intent intent5 = new Intent(MainActivity.this, Register.class); startActivity(intent5); finish(); 判斷是否數(shù)據(jù)之前有沒有注冊過 boolean userdata = false; for (int i = 0; i < data.size(); i++) { User user= data.get(i); //可存儲賬號數(shù)量 if (name.equals(user.getName()) && password.equals(user.getPassword())) { userdata = true; break; } else { userdata = false; } } 把注冊的數(shù)據(jù)都放到userdata當中,ArrayList data = mSQlite.getAllDATA(); 判斷date的長度,用.size()進行長度的判斷。 3. 首先點擊我們需要的菜譜,進行到菜品的詳情頁面,我們要先制作一個模板,通過在集合的數(shù)據(jù),依次循環(huán),將數(shù)據(jù)放入進去,同時還需要一個簡單的適配器,listView展示給用戶看的時候,需要設置適配器BaseAdapter。 // 決定了ListView列表展示的行數(shù) @Override public int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } 系統(tǒng)詳細設計 4.1結構設計(文件結構、數(shù)據(jù)結構) 軟件系統(tǒng)操作流程的設計目的是簡化設計流程,更加方便日后開發(fā)程序人員進行更好的設計相關的軟件開發(fā)。當然這樣的設計為以后程序開發(fā)人員的開發(fā)設計和用戶的使用感都有很大的關系。因此,系統(tǒng)操作圖、注冊流程圖、登錄流程圖顯得尤為重要。如圖所示。 系統(tǒng)的安全性非常重要,所以您需要登錄才能登錄,不進行注冊您就不能使用主賬戶頁面,如圖所示。 4.2函數(shù)設計 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password TEXT)”); } 這邊是數(shù)據(jù)庫的登錄和注冊的設計,后面的信息采用的是 系統(tǒng)實現(xiàn) 5.1運行結果 5.2關鍵代碼 數(shù)據(jù)庫 private SQLiteDatabase db; public SQlite(Context context) { super(context, “db_test”, null, 1); db = getReadableDatabase(); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE IF NOT EXISTS user(” + “_id INTEGER PRIMARY KEY AUTOINCREMENT,” + “name TEXT,” + “password TEXT)”); } 適配器 // 決定了ListView列表展示的行數(shù) @Override public int getCount() { return mDatas.size(); } //返回指定位置對應的數(shù)據(jù) @Override public Object getItem(int position) { return mDatas.get(position); } // 返回指定位置所對應的id @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null); //將布局轉換成view對象的方法 holder=new ViewHolder(convertView); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } // 加載控件顯示的內(nèi)容 // 獲取集合指定位置的數(shù)據(jù) FoodBean foodBean = mDatas.get(position); holder.titleTv.setText(foodBean.getTitle()); holder.notTv.setText(“材料:”+foodBean.getDesc()); holder.iv.setImageResource(foodBean.getPicId()); return convertView; } class ViewHolder{ ImageView iv; TextView titleTv,notTv; public ViewHolder(View view){ iv = view.findViewById(R.id.item_info_iv); titleTv = view.findViewById(R.id.item_info_title); notTv = view.findViewById(R.id.item_info_tv_notitle); } } } 登錄、注冊 public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(password)) { ArrayList data = mSQlite.getAllDATA(); boolean userdata = false; for (int i = 0; i < data.size(); i++) { User user= data.get(i); //可存儲賬號數(shù)量 if (name.equals(user.getName()) && password.equals(user.getPassword())) { userdata = true; break; } else { userdata = false; } } if (userdata) { Toast.makeText(MainActivity.this, “登錄成功”, Toast.LENGTH_SHORT).show(); Intent intent = new Intent(MainActivity.this, Home.class); intent.putExtra(“username”,name); intent.putExtra(“password”,password); //展示賬號密碼功能 startActivity(intent); finish(); } else { Toast.makeText(MainActivity.this, “用戶名或密碼不正確”, Toast.LENGTH_SHORT).show(); } } else { Toast.makeText(MainActivity.this, “用戶名或密碼不能為空”, Toast.LENGTH_SHORT).show(); } } }); mSQlite = new SQlite(MainActivity.this); } protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); reday = findViewById(R.id.reday); back = findViewById(R.id.back); username = findViewById(R.id.userName); userpassword =findViewById( R.id.userpassword); back.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Register.this,MainActivity.class); startActivity(intent); finish(); } }); reday.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String name = username.getText().toString().trim(); String password = userpassword.getText().toString().trim(); if(!TextUtils.isEmpty(name)&&!TextUtils.isEmpty(password)){ mSQlite.add(name,password); Intent intent1 = new Intent(Register.this,MainActivity.class); startActivity(intent1); finish(); Toast.makeText(Register.this,”注冊成功”,Toast.LENGTH_SHORT).show(); }else {Toast.makeText(Register.this,”信息不完備,注冊失敗”,Toast.LENGTH_SHORT).show();} } }); mSQlite = new SQlite(Register.this); } } 結論 在這個過程中,我學到了很多,我知道我還有很多經(jīng)驗要學,我的專業(yè)技能還不夠。當涉及到基本的計算機知識時,許多事情可以改進,以進一步優(yōu)化設計。作為一名合格的項目協(xié)調(diào)員,我將繼續(xù)解決這些缺點。尤其是計算機系統(tǒng)的底層得到了優(yōu)化;簡單的關系數(shù)據(jù)庫可能不滿足以下要求。 參考文獻 [1] 劉奇付,李紫艷.基于Android平臺的大學生生活費手機管理系統(tǒng)設計與實現(xiàn)[J].軟件導刊,2015,14(9):141-143. [2]周李達,鄧璐凡,王中霖,等.基于Android的大學生出行系統(tǒng)設計與實現(xiàn)[J].信息與電腦:理論版,2015(19):99-101. [3]王亞維,徐霞.基于Android的大學生兼職系統(tǒng)設計與實現(xiàn)[J].地理空間信息,2013,11(2):98-100. [4] 韋俊星,曾祥寶,黃美素,等.基于安卓系統(tǒng)的大學生黨課培訓系統(tǒng)客戶端的設計與實現(xiàn)[J].中國新通信,2015,17(11):116-117. [5] 盧昕,楊晞.基于VFP6.0收款記賬管理系統(tǒng)的實現(xiàn)[J].電腦編程技巧與維護,2014(6):48-49. [6] 趙世祥,楊昆,朱彥輝,等.基于Android平臺的大學生課程計劃管理系統(tǒng)[J].通訊世界,2016(1):113-114. [7] 馮璐.一個”網(wǎng)絡記賬本”的設計與實現(xiàn)——基于PHP+MySQL的收支管理系統(tǒng)[J].電腦知識與技術:學術交流,2007,4(19):20-22. [8] O’Hanlon J,Peasnell K. Wall Street’s contribution to management accounting: the Stern StewartEVA financial management system[J]. Management Accounting Research, 1998,9(4):421-444. [9] 許榮豐.財務綜合管理系統(tǒng)運行中存在的問題[J].吉林金融研究,2008(3):74-74. [10]李斌.會計信息化管理——記賬憑證的幾點新認識[J]. 中國鄉(xiāng)鎮(zhèn)企業(yè)會計, 2009(2):122-124. [11]盧照,王琦,王華.基于Android平臺的大學生實用軟件設計開發(fā)[J].微型機與應用,2015(24):19-20. [12]陳夢娜,藍建平.基于Android的大學生文明寢室測評系統(tǒng)設計與實現(xiàn)[J].網(wǎng)絡安全技術與應用,2014(3):64-65. [13]黃天上,姚世強,裴冬梅,等.基于Android平臺的大學生校園服務信息實時發(fā)布系統(tǒng)的研究[J].教育,2015(10):218-218. [14]吳冬芹,陳子健.基于GTD的大學生時間管理系統(tǒng)設計與實現(xiàn)[J].電腦編程技巧與維護,2015(16):44-45. [15]王秋麗.我國財務軟件的現(xiàn)狀及發(fā)展趨勢[J].山西經(jīng)濟管理干部學院學報,2012,10(1): 43-45.[/caption]

菜譜APP源碼和設計報告

登錄界面 注冊界面

菜譜APP源碼和設計報告

主界面

菜譜APP源碼和設計報告
菜譜APP源碼和設計報告


搜索界面 軟件詳情 菜品詳情

3.3.2界面切換描述

菜譜APP源碼和設計報告

1.登錄到注冊頁面的切換

Intent intent5 = new Intent(MainActivity.this, Register.class);
startActivity(intent5);
finish();

  1. 判斷是否數(shù)據(jù)之前有沒有注冊過
    boolean userdata = false;
    for (int i = 0; i < data.size(); i++) {
    User user= data.get(i);?//可存儲賬號數(shù)量
    if (name.equals(user.getName()) && password.equals(user.getPassword())) {
    userdata = true;
    break;
    } else {
    userdata = false;
    }
    }
    把注冊的數(shù)據(jù)都放到userdata當中,ArrayList<User> data = mSQlite.getAllDATA();
    判斷date的長度,用.size()進行長度的判斷。
    3.

菜譜APP源碼和設計報告
菜譜APP源碼和設計報告

首先點擊我們需要的菜譜,進行到菜品的詳情頁面,我們要先制作一個模板,通過在集合的數(shù)據(jù),依次循環(huán),將數(shù)據(jù)放入進去,同時還需要一個簡單的適配器,listView展示給用戶看的時候,需要設置適配器BaseAdapter。
// 決定了ListView列表展示的行數(shù)
@Override
public int getCount() {
return mDatas.size();
}
//返回指定位置對應的數(shù)據(jù)
@Override
public Object getItem(int position) {
return mDatas.get(position);
}
// 返回指定位置所對應的id
@Override
public long getItemId(int position) {
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(R.layout.item_list,null);?//將布局轉換成view對象的方法
holder=new ViewHolder(convertView);
convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}

  1. 系統(tǒng)詳細設計

4.1結構設計(文件結構、數(shù)據(jù)結構)

軟件系統(tǒng)操作流程的設計目的是簡化設計流程,更加方便日后開發(fā)程序人員進行更好的設計相關的軟件開發(fā)。當然這樣的設計為以后程序開發(fā)人員的開發(fā)設計和用戶的使用感都有很大的關系。因此,系統(tǒng)操作圖、注冊流程圖、登錄流程圖顯得尤為重要。如圖所示。

菜譜APP源碼和設計報告

系統(tǒng)的安全性非常重要,所以您需要登錄才能登錄,不進行注冊您就不能使用主賬戶頁面,如圖所示。

菜譜APP源碼和設計報告

4.2函數(shù)設計

菜譜APP源碼和設計報告

private SQLiteDatabase db;
public SQlite(Context context) {
super(context, “db_test”, null, 1);
db = getReadableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(“CREATE TABLE IF NOT EXISTS user(” +
“_id INTEGER PRIMARY KEY AUTOINCREMENT,” +
“name TEXT,” +
“password TEXT)”);
}

這邊是數(shù)據(jù)庫的登錄和注冊的設計,后面的信息采用的是

  1. 系統(tǒng)實現(xiàn)

5.1運行結果

菜譜APP源碼和設計報告
菜譜APP源碼和設計報告
菜譜APP源碼和設計報告


源碼鏈接:https://yunjunet.cn/875242.html

菜譜APP源碼和設計報告的評論 (共 條)

分享到微博請遵守國家法律
迁西县| 神农架林区| 寿阳县| 桐庐县| 临澧县| 方城县| 宿迁市| 长沙市| 封丘县| 郯城县| 宁津县| 扎赉特旗| 伊吾县| 张家港市| 罗源县| 梁河县| 沙湾县| 渝中区| 敦煌市| 昭觉县| 苍梧县| 宿州市| 镇原县| 丰宁| 临洮县| 祁阳县| 陆川县| 彭阳县| 泰安市| 鸡泽县| 霍邱县| 仪陇县| 阿克陶县| 宁强县| 涡阳县| 利辛县| 永川市| 海安县| 富宁县| 太谷县| 贺兰县|