freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

1(基于android的網(wǎng)上訂餐系統(tǒng))-資料下載頁

2025-11-28 00:36本頁面

【導(dǎo)讀】隨著科技的發(fā)展,二十一世紀(jì)成為了以網(wǎng)絡(luò)化,信息化為核心的社會(huì)。也成為了時(shí)下最熱門的詞匯。隨著信息技術(shù)的不斷更新,特別是07年谷歌公司推出了。展的需求,方便、快捷、個(gè)性化的網(wǎng)上訂餐服務(wù)正在進(jìn)入人們的生活。外送服務(wù)提供了一套系統(tǒng)。MyEclipse、TOMCAT、AndroidSDK、ADT、AVD、DDMS等開發(fā)環(huán)境或者開發(fā)工具。Keywords:Android;Java;MyEclipse;SQLite;SQLServer2021

  

【正文】 ton),復(fù)選按鈕( CheckBox)等,然后用一系列的布局將其有條理的放在這個(gè)窗口中。 圖 登陸窗口 當(dāng)用戶點(diǎn)擊游客登陸時(shí),將不會(huì)跟服務(wù)器的數(shù)據(jù)庫進(jìn)行匹配,直接進(jìn)入主界面,代碼如下: if (flag) { // 當(dāng)用戶選擇游客登陸時(shí)點(diǎn)擊登陸按鈕直接進(jìn)入主界面 Intent intent = new Intent(, )。 startActivity(intent)。 Intent intent1 = new Intent(, )。 startService(intent1)。 } 當(dāng)用戶點(diǎn)擊會(huì)員登陸時(shí),會(huì)把用戶輸入的數(shù)據(jù)跟服務(wù)器端數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行匹配,如果相同則登陸成功,否則彈出登陸失敗的信息。如果用戶點(diǎn)擊了記住密碼選項(xiàng),則把用戶輸入的用戶名和密碼都保存到 SharedPreferences中。代碼如下: String name = ().toString().trim()。 String password = ().toString().trim()。 // 包裝用戶發(fā)送的用戶數(shù)據(jù) Member member = new Member(name, password)。 (member)。 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 21 (, member)。 result = ()。 // 向服務(wù)端發(fā)送數(shù)據(jù) if (() 0) { response = (0)。 } // 根據(jù)服務(wù)端的相應(yīng)信息進(jìn)行相應(yīng)判斷 if (response != null) { // 將用戶名存在 sharedPreferences Editor namedata = ()。 (name, ().toString().trim())。 ()。 // 將密碼存在 sharedPreferences Editor passworddata = ()。 (password, ().toString().trim())。 ()。 // 登錄成功,進(jìn)入主界面 else // 登錄失敗,彈出錯(cuò)誤信息 當(dāng)用戶點(diǎn)擊注冊(cè)按鈕時(shí),通過 Android的 Intent機(jī)制,就從登陸界面跳轉(zhuǎn)到注冊(cè)界面,接下來實(shí)現(xiàn)系統(tǒng)注冊(cè)的功能。 系統(tǒng)注冊(cè) 注冊(cè)界面如圖 ,跟登陸界面一下,它也有一個(gè)屬于它的布局文件來擺放這些控件,在此模塊中必須要輸入正確這些注冊(cè)信息,才能正常的進(jìn)行注冊(cè)。 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 22 圖 注冊(cè)界面 當(dāng)用戶點(diǎn)擊取消按鈕時(shí),界面會(huì)跳轉(zhuǎn)回到登陸界面,當(dāng)用戶點(diǎn)擊注冊(cè)按鈕時(shí)會(huì)跟服務(wù)器端的數(shù)據(jù)庫進(jìn)行連接,把用戶所填的信息拼 接發(fā)給服務(wù)器,服務(wù)器處理過后將數(shù)據(jù)插入到數(shù)據(jù)庫中對(duì)應(yīng)的表中??蛻舳藢?shí)現(xiàn)注冊(cè)代碼如下: (new OnClickListener() { public void onClick(View v) { // 獲取用戶輸入數(shù)據(jù) if(()||()||()){ //如果用戶輸入用戶名或密碼為空,則給出提示,用戶名和密碼不能為空 }else {//如果不為空 則先放入 HashMap中,再做密碼輸入是否一致的判斷 // 判斷輸入的密碼是否一致 if ((password).equals( (repassword))) { // 拼湊數(shù)據(jù) data = name + (username) + 。 + password + (password) +。 + sex + (sex) + 。 + num + (number) + 。 + address + (address)。 Member member=new Member(name,password,infoHashMap .get(sex),number,address)。 (member)。 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 23 // 準(zhǔn)備請(qǐng)求數(shù)據(jù) (, , data)。 // 向服務(wù)端發(fā)送請(qǐng)求 response = ()。 // 判斷響應(yīng)信息,根據(jù)信息觸發(fā)不同的事件 if ((success)) { // 跳轉(zhuǎn)到主界面 } else // 以對(duì)話框的形式給出錯(cuò)誤信息 } else // 以對(duì)話框的形式給出錯(cuò)誤信息 :密碼必須一致 瀏覽菜品 用戶登陸成功或者選擇游客登陸成功后,會(huì)直接進(jìn)入到主界面,如圖 ,主界面的布局采用的是 TabHost分頁式布局,每一個(gè) Tab都對(duì)應(yīng)一個(gè) Activity,通過 addTab這個(gè)方法來添加 Tab,這個(gè)控件讓 Android手機(jī)多個(gè) Activity共享一個(gè)界面,而且操作方便,簡(jiǎn)單,布局好看。 圖 主界面 當(dāng)用戶選擇菜單選項(xiàng)時(shí),在其下 面將列出從服務(wù)器端發(fā)送過來菜品簡(jiǎn)要信息數(shù)據(jù),客戶端想要看到這些數(shù)據(jù)必須對(duì)它進(jìn)行一系列的處理,在此,本模塊采用了 ListView來顯示菜品信息, ListView是以列表的形式來展示具體內(nèi)容,并且能夠根據(jù)數(shù)據(jù)的長度自適應(yīng)的顯示,要想 ListView顯示數(shù)據(jù)必須要為其添加適配器( Adapter),適配器分為很多種,有 ArrayAdapter、 SimpleAdapter、 BaseAdapter等等,由于在該 ListView中顯示的湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 24 數(shù)據(jù)比較多,而且還有圖片信息等,所以在此采用 BaseAdapter來構(gòu)建適配器。 構(gòu)建 BaseAdapter核心代碼: // 菜單模塊的自定義適配器。 class ProductAdapter extends BaseAdapter { public View getView(int position, View convertView, ViewGroup parent){ ViewHolder viewHolder = null。 // 如果 convertView為空 則為其創(chuàng)建一個(gè) View if (convertView == null) { LayoutInflater inflater = (ctx)。 viewHolder = new ViewHolder()。 convertView = (, null)。 // 獲得 listitem布局中的控件并添加到 View上 (viewHolder)。 } // 如果 convertView不為空 那么直接為其灌入數(shù)據(jù) else { viewHolder = (ViewHolder) ()。 } // 獲得所有的數(shù)據(jù)并灌入 convertView中 return convertView。} } 向服務(wù)器獲得菜品信息的數(shù)據(jù)代碼: public void proRequest() { (, , )。 BaseProducts bp = new BaseProducts()。 (1)。 (bp)。 ListObject result = ()。 if (result == null) { }} 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 25 搜索菜品 圖 搜索界面 如果菜品數(shù)量過多,用戶將會(huì)很難找到自己心儀的菜品,在此,本項(xiàng)目為了方便用戶選擇特定的菜品,設(shè)計(jì)了一個(gè)搜索菜品的功能,通過搜索界面,用戶可以通過商品名稱、商家名稱、商品價(jià)格三個(gè)搜索條件來搜索對(duì)自己胃口的菜品,如圖 ,該功能暫時(shí)僅支持單條件搜索,在此列出按 商品名稱搜索的核心代碼,另外兩種搜索代碼跟此差不多。 // 通過商品名稱模糊查詢。 public void getProductByName(String name) { List productListByname = new ArrayList()。 Cursor cursor = (name)。 int count = ()。 ()。 if (count 0) { // 對(duì)菜品數(shù)據(jù)遍歷查找 for (int i = 0。 i count。 i++) { HashMap map = new HashMap()。 (bid, (0))。 (bpicture, (4))。 (bname, (1))。 (bstyle, (2))。 (bprice, (3))。 (map)。 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 26 ()。 } ()。 productList = productListByname。 ()。 } else // 提示沒有找到要查詢的菜品 } 訂餐 訂餐功能是本項(xiàng)目的核心功能,前面做的那些 僅僅是為訂餐功能做鋪墊。當(dāng)用戶點(diǎn)擊每一行菜品時(shí),不論這菜品時(shí)在菜品列表中還是在搜索列表中都會(huì)跳轉(zhuǎn)到菜品詳細(xì)信息界面,在跳轉(zhuǎn)的同時(shí), Intent里面會(huì) PutExtra菜品的數(shù)據(jù),在詳細(xì)信息界面中再將 Intent里面的數(shù)據(jù)取出并顯示。界面如圖 ,在該界面中顯示了菜品的圖片、價(jià)格、評(píng)分、是否有折扣、菜品詳細(xì)介紹等菜品信息,還有兩個(gè)按鈕和輸入訂餐份數(shù)的文本輸入框,該輸入框只允許輸入數(shù)字。如果用戶選好了菜品,并且準(zhǔn)備將菜品加入購物車時(shí),用戶首先得輸入一個(gè)菜品份數(shù),并點(diǎn)擊加入購物車按鈕,這時(shí)系統(tǒng)將進(jìn)行一系列的邏輯處 理,如果購物車中沒有物品則直接加入,如果購物車中已經(jīng)有物品了,則將用戶剛加入購物車的菜品數(shù)據(jù)跟購物車中原有的數(shù)據(jù)進(jìn)行匹配,如果已經(jīng)有了,那么將提示用戶,該物品購物車?yán)镆延?,反之則加入購物車。 圖 菜品詳情 在此列出跳轉(zhuǎn)界面時(shí)對(duì)數(shù)據(jù)處理的代碼: 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 27 菜品行點(diǎn)擊事件,把數(shù)據(jù) putExtra到 Intent中 public void onItemClick(AdapterView? parent, View view, int id, long position) { if (position != 1) { ViewHolder holder = (ViewHolder) ()。 TextView tvid = (TextView) ()。 TextView tvname = (TextView) ()。 TextView tvprice = (TextView) ()。 Intent intent = new Intent(,)。 (pic, (Bitmap) ())。 (bid, ().toString())。 (bname, ().toString())。 (bprice, ().toString())。 startActivity(intent)。 在詳細(xì)信息界面中取出 Intent里面的數(shù)據(jù)代碼: Intent intent = getIntent()。 Bitmap pic=(Bitmap)(pic)。 ivdish=(ImageView)findViewById()。 (pic)。 //獲得商品 id tvbid=(bid)。 // 獲得菜名 bname= (bname)。 price =(bprice)。 將菜品添加到購物車中代碼: (new OnClickListener() { public void onClick(View v) { int count=()。 if(count0)//表示購物車中有數(shù)據(jù) { for(int i=0。icount。i++){ String existid=(String)((HashMap) (i)).get(bid)。 if((tvbid)) //購物車中有相同的數(shù)據(jù) else { HashMap item = new HashMap()。 (bid, tvbid)。 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 28 (bprice, price)。 (bname, bname)。 (bnum, ().toString())。 (item)。// 將 HashMap添加到 List中 else//購物車為空時(shí)直接添加 Intent intent =new Intent(,)。 (changenum, ().toString())。 startActivity(intent)。 結(jié)賬 當(dāng)然,訂餐完成之后就得去購物車模塊進(jìn)行結(jié)賬操作。 首先用戶可以選中購物車中的物品,點(diǎn)擊 menu按鈕對(duì)物品進(jìn)行修改數(shù)量和刪除操作。要實(shí)現(xiàn) Android menu功能必須重載 onCreateOptionsMenu、 onPr
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1