国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP

系統(tǒng) OpenHarmony
本篇帶給大家運(yùn)用HarmonyOS打造一款相親APP,愿社區(qū)的每一位單身的同志都能通過逛社區(qū)找到心儀的對象。

[[419696]]

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

簡易版 相親APP

實現(xiàn)如下效果:

如果喜歡就點(diǎn)擊下面的“聯(lián)系方式”,不喜歡就點(diǎn)擊“下一個”

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)
HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

1. 布局實現(xiàn)

新建項目:MakeFriendsApplication

把以下九個girl圖片復(fù)制到 media 文件夾下

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)
HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

有需要上面圖片素材的小伙伴可以自?。篽ttps://www.aliyundrive.com/s/j59dy5redPR

當(dāng)然也可以自己在網(wǎng)上找,圖片信息如下:

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

可以在上面的實現(xiàn)看到布局是由:一個圖片+三個文本+兩個按鈕 組成的

布局實現(xiàn):

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <DirectionalLayout 
  3.     xmlns:ohos="http://schemas.huawei.com/res/ohos" 
  4.     ohos:height="match_parent" 
  5.     ohos:width="match_parent" 
  6.     ohos:alignment="center" 
  7.     ohos:orientation="vertical"
  8.  
  9.     <Image 
  10.         ohos:id="$+id:img" 
  11.         ohos:height="match_content" 
  12.         ohos:width="match_content" 
  13.         ohos:image_src="$media:girl1"/> 
  14.  
  15.     <Text 
  16.         ohos:id="$+id:name" 
  17.         ohos:height="50vp" 
  18.         ohos:width="150vp" 
  19.         ohos:text="姓名:王美花" 
  20.         ohos:text_size="20fp"/> 
  21.  
  22.     <Text 
  23.         ohos:id="$+id:age" 
  24.         ohos:height="50vp" 
  25.         ohos:width="150vp" 
  26.         ohos:text="年齡:29" 
  27.         ohos:text_size="20fp"/>  
  28.  
  29.     <Text 
  30.         ohos:id="$+id:address" 
  31.         ohos:height="50vp" 
  32.         ohos:width="150vp" 
  33.         ohos:text="地址:南京" 
  34.         ohos:text_size="20fp"/> 
  35.      
  36.     <Button 
  37.         ohos:id="$+id:next" 
  38.         ohos:height="50vp" 
  39.         ohos:width="150vp" 
  40.         ohos:background_element="#92D050" 
  41.         ohos:text="下一個" 
  42.         ohos:text_size="20fp" 
  43.         ohos:text_color="#FFFFFF"/> 
  44.  
  45.     <Button 
  46.         ohos:id="$+id:get" 
  47.         ohos:height="50vp" 
  48.         ohos:width="150vp" 
  49.         ohos:background_element="#92D050" 
  50.         ohos:text="獲取聯(lián)系方式" 
  51.         ohos:text_size="20fp" 
  52.         ohos:text_color="#FFFFFF" 
  53.         ohos:top_margin="10vp"/> 
  54.  
  55. </DirectionalLayout> 

運(yùn)行:

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

2. 核心業(yè)務(wù)邏輯實現(xiàn)

先找到組件對象

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

業(yè)務(wù):點(diǎn)擊了按鈕“下一個”就要修改上面的信息,能不能把上面的信息看作成一個整體的對象?

現(xiàn)在有9個相親對象,點(diǎn)擊“下一個”的時候,就會隨機(jī)把一個相親對象的信息去顯示在上面。

創(chuàng)建一個Javabean類去描述女朋友信息,有了Javabean類后才能在代碼中創(chuàng)建對象

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

在domain中新建類名為:GirlFriend,在類中的屬性有哪些?

如:圖片、姓名、地址、年齡都是GirlFriend類中的屬性

在資源管理器中獲取圖片,發(fā)現(xiàn)girl圖片是int類型的

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

所以在JavaBean中GirlFriend類中圖片類型使用int類型

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

其他屬性使用對應(yīng)的類型

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

最后生成標(biāo)準(zhǔn)的JavaBean即可

  1. package com.xdr630.makefriendsapplication.domain; 
  2.  
  3. public class GirlFriend { 
  4.     //照片 
  5.     private int photoID; 
  6.     //姓名 
  7.     private String name
  8.     //年齡 
  9.     private int age; 
  10.     //地址 
  11.     private String address; 
  12.  
  13.     //空參 + 全參:alt + insert 
  14.  
  15.     public GirlFriend() { 
  16.     } 
  17.  
  18.     public GirlFriend(int photoID, String nameint age, String address) { 
  19.         this.photoID = photoID; 
  20.         this.name = name
  21.         this.age = age; 
  22.         this.address = address; 
  23.     } 
  24.  
  25.     public int getPhotoID() { 
  26.         return photoID; 
  27.     } 
  28.  
  29.     public void setPhotoID(int photoID) { 
  30.         this.photoID = photoID; 
  31.     } 
  32.  
  33.     public String getName() { 
  34.         return name
  35.     } 
  36.  
  37.     public void setName(String name) { 
  38.         this.name = name
  39.     } 
  40.  
  41.     public int getAge() { 
  42.         return age; 
  43.     } 
  44.  
  45.     public void setAge(int age) { 
  46.         this.age = age; 
  47.     } 
  48.  
  49.     public String getAddress() { 
  50.         return address; 
  51.     } 
  52.  
  53.     public void setAddress(String address) { 
  54.         this.address = address; 
  55.     } 

創(chuàng)建好了Javabean,就可以創(chuàng)建一個集合裝9個相親的對象,使用集合來存儲了,ArrayList,泛型就可以直接寫創(chuàng)建好的GirlFriend 類

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

在以后學(xué)習(xí)了和服務(wù)器交互之后,這些數(shù)據(jù)都是從服務(wù)器獲取的,就不是一個一個添加了

下面就是手動添加數(shù)據(jù)來源

創(chuàng)建一個女朋友對象(new GirlFriend )并添加到 list 當(dāng)中

為了方便,省的去查看Javabean中屬性的排序,Ctrl + P 就可以查看參數(shù)了

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

添加完成9個對象

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

接著給按鈕添加點(diǎn)擊事件,兩個按鈕都要添加,分別是“next”和“get”按鈕

實現(xiàn)本類中點(diǎn)擊事件

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

當(dāng)next按鈕被點(diǎn)擊后,就會執(zhí)行本類中的onClick方法

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

get 按鈕同上也要添加單擊事件

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

然后在 onClick 方法中判斷點(diǎn)擊是 next 按鈕 或 get 按鈕

因為在 onClick 方法中要用到按鈕的對象,所以把按鈕的對象提升為 成員變量 才能在onClick方法中被訪問的到,用到哪個就提哪個,這些組件都用的到,所以都提為成員變量。

在下面onClick方法當(dāng)中,要從集合中獲取girl信息,所以集合也要提為成員變量

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

Random對象也放在成員位置,表示在程序啟動之后就創(chuàng)建了一個,如果放在onClick方法中,當(dāng)點(diǎn)擊一次就創(chuàng)建一次,內(nèi)存冗余。

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

MainAbilitySlice

  1. package com.xdr630.makefriendsapplication.slice; 
  2.  
  3. import com.xdr630.makefriendsapplication.ResourceTable; 
  4. import com.xdr630.makefriendsapplication.domain.GirlFriend; 
  5. import ohos.aafwk.ability.AbilitySlice; 
  6. import ohos.aafwk.content.Intent; 
  7. import ohos.agp.components.Button; 
  8. import ohos.agp.components.Component; 
  9. import ohos.agp.components.Image; 
  10. import ohos.agp.components.Text; 
  11.  
  12. import java.util.ArrayList; 
  13. import java.util.Random; 
  14.  
  15. public class MainAbilitySlice extends AbilitySlice implements Component.ClickedListener { 
  16.  
  17.         Image img; 
  18.         Text name
  19.         Text age; 
  20.         Text address; 
  21.         Button next
  22.         Button get; 
  23.  
  24.         ArrayList<GirlFriend> list = new ArrayList<>(); 
  25.  
  26.     @Override 
  27.     public void onStart(Intent intent) { 
  28.         super.onStart(intent); 
  29.         super.setUIContent(ResourceTable.Layout_ability_main); 
  30.  
  31.         //1.找到組件對象 
  32.         img = (Image) findComponentById(ResourceTable.Id_img); 
  33.         name = (Text) findComponentById(ResourceTable.Id_name); 
  34.         age = (Text) findComponentById(ResourceTable.Id_age); 
  35.         address = (Text) findComponentById(ResourceTable.Id_address); 
  36.         next = (Button) findComponentById(ResourceTable.Id_next); 
  37.         get = (Button) findComponentById(ResourceTable.Id_get); 
  38.         //2.創(chuàng)建一個集合裝9個相親的對象 
  39.  
  40.  
  41.         //添加9個對象 
  42.         //在以后學(xué)習(xí)了和服務(wù)器交互之后,這些數(shù)據(jù)都是從服務(wù)器獲取的 
  43.         list.add(new GirlFriend(ResourceTable.Media_girl1,"王美花1",29,"南京")); 
  44.         list.add(new GirlFriend(ResourceTable.Media_girl2,"王美花2",30,"上海")); 
  45.         list.add(new GirlFriend(ResourceTable.Media_girl3,"王美花3",31,"武漢")); 
  46.         list.add(new GirlFriend(ResourceTable.Media_girl4,"王美花4",28,"長沙")); 
  47.         list.add(new GirlFriend(ResourceTable.Media_girl5,"王美花5",25,"南昌")); 
  48.         list.add(new GirlFriend(ResourceTable.Media_girl6,"王美花6",26,"杭州")); 
  49.         list.add(new GirlFriend(ResourceTable.Media_girl7,"王美花7",23,"深圳")); 
  50.         list.add(new GirlFriend(ResourceTable.Media_girl8,"王美花8",22,"北京")); 
  51.         list.add(new GirlFriend(ResourceTable.Media_girl9,"王美花9",24,"廣州")); 
  52.  
  53.         //3.給按鈕添加點(diǎn)擊事件 
  54.         next.setClickedListener(this); 
  55.         get.setClickedListener(this); 
  56.  
  57.     } 
  58.  
  59.     @Override 
  60.     public void onActive() { 
  61.         super.onActive(); 
  62.     } 
  63.  
  64.     @Override 
  65.     public void onForeground(Intent intent) { 
  66.         super.onForeground(intent); 
  67.     } 
  68.  
  69.     Random r =  new Random(); 
  70.  
  71.     @Override 
  72.     public void onClick(Component component) { 
  73.         if (component == next){ 
  74.             //點(diǎn)擊的是下一個 --- 換一個girl的信息 
  75.             //從集合中獲取一個隨機(jī)的girl的信息 
  76.  
  77.             //獲取一個隨機(jī)索引 
  78.             int randomIndex = r.nextInt(list.size()); 
  79.             //通過隨機(jī)索引獲取隨機(jī)girl信息 
  80.             GirlFriend girlFriend = list.get(randomIndex); 
  81.             //把隨機(jī)出來的信息設(shè)置到界面當(dāng)中 
  82.             img.setImageAndDecodeBounds(girlFriend.getPhotoID()); 
  83.             name.setText("姓名:" + girlFriend.getName()); 
  84.             age.setText("年齡:" + girlFriend.getAge()); 
  85.             address.setText("地址:" + girlFriend.getAddress()); 
  86.  
  87.  
  88.         }else if (component == get){ 
  89.             //獲取聯(lián)系方式 
  90.             //擴(kuò)展:可以跳轉(zhuǎn)到界面讓用戶充值界面,充值后才能看到girl信息 
  91.         } 
  92.     } 

運(yùn)行:

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

點(diǎn)擊“下一個”

HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)
HarmonyOS實戰(zhàn)—實現(xiàn)相親APP-鴻蒙HarmonyOS技術(shù)社區(qū)

當(dāng)點(diǎn)擊“下一個”按鈕時,信息也會隨之一起獲取的到,所以有需求的小伙伴可以擴(kuò)展下,當(dāng)點(diǎn)擊“下一個”按鈕時信息是隱藏的,只有當(dāng)點(diǎn)擊“獲取聯(lián)系方式”時才能顯示出對應(yīng)的信息,或也可以添加充值頁面,當(dāng)點(diǎn)擊“獲取聯(lián)系方式”時,就跳轉(zhuǎn)到充值頁面,只有充值完后才能看到對應(yīng)的信息。

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2015-09-18 10:44:54

大數(shù)據(jù)相親

2022-09-01 11:04:47

PythonApp

2010-12-10 11:26:56

“相親式”招聘

2010-07-26 15:30:43

面試

2021-01-14 09:50:26

鴻蒙HarmonyOSAPP

2015-05-30 10:04:24

線下公開課51CTO沙龍MDSA

2024-07-26 16:17:22

2021-07-05 14:29:28

鴻蒙HarmonyOS應(yīng)用

2020-11-05 10:05:25

App

2014-12-17 10:29:59

混合應(yīng)用Hybrid App開發(fā)實戰(zhàn)

2010-06-24 10:59:56

APP-V虛擬化應(yīng)用虛擬化

2010-06-23 10:09:31

APP-V虛擬化應(yīng)用虛擬化

2020-08-25 15:17:12

戴爾

2013-03-19 10:33:48

大數(shù)據(jù)相親數(shù)據(jù)分析

2021-01-11 11:04:49

鴻蒙HarmonyOS應(yīng)用開發(fā)

2021-08-10 15:37:34

鴻蒙HarmonyOS應(yīng)用

2024-02-19 15:40:37

鴻蒙App備案阿里云

2021-03-30 09:45:07

鴻蒙HarmonyOS應(yīng)用開發(fā)

2021-03-17 09:35:09

鴻蒙HarmonyOS應(yīng)用開發(fā)

2009-01-08 11:05:55

學(xué)賽 IT教育
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

亚洲狼人在线| 亚洲日本乱码在线观看| 亚洲理论电影在线观看| 日韩精品电影一区亚洲| 精品免费视频123区| 国产成人av一区| 免费一级大片| 亚洲成人资源网| 亚洲一区二三| 欧美一级做一级爱a做片性| 欧美精品一区二区三| 污网站视频在线观看| 91 com成人网| 在线观看欧美日韩电影| 欧美怡红院视频| 成人免费短视频| 国产精品久久久久久久9999| 在线一区视频| 777久久久精品一区二区三区| 亚洲一二三区不卡| 香蕉久久aⅴ一区二区三区| 欧美综合国产精品久久丁香| 免费高清视频精品| 成人黄网大全在线观看| 亚洲精品丝袜日韩| 亚洲毛片免费看| 免费国产一区二区| 精品电影一区| 一区二区三区av在线| 亚洲精品国产a久久久久久| 乱人伦中文视频在线| 国模精品视频一区二区三区| 99精品国产福利在线观看免费 | 一级毛片在线看| 欧美色偷偷大香| 日本国产一区| 国产综合精品一区二区三区| 国产经典欧美精品| 三级视频网站在线| 91麻豆桃色免费看| 成人性视频免费网站| 福利片在线免费观看| 538国产精品一区二区免费视频| 日本视频一区二区| 国产在线你懂得| 亚洲伊人婷婷| 亚洲欧洲另类精品久久综合| 午夜美女久久久久爽久久| 亚洲一区二区国产| 久久精品综合网| 91九色美女在线视频| 不卡视频一区二区三区| 久久精品人人做人人爽| 欧美精品在线一区二区三区| 日韩免费在线| 天天色综合6| 国产一区在线观| 一区二区三区四区在线视频| 综合久久五月天| 精品久久香蕉国产线看观看亚洲| 久久久噜噜噜久久狠狠50岁| 色综合.com| 超碰在线免费看| 三区四区电影在线观看| 天天干天天综合| 欧洲精品毛片网站| 欧美激情一区二区三区不卡| 欧美1级片网站| 国产综合在线观看| 亚洲欧洲精品一区二区| 亚洲欧美成人在线| 2022国产精品视频| 久久久久久毛片免费看| av最新在线| 最后生还者第二季在线观看 | 亚洲三级网址| 91黄色在线| 免费在线黄网站| 一区二区三区四区五区视频| 国产精品久久久久久久久久久久冷 | 色欧美88888久久久久久影院| 久久综合色鬼综合色| 水野朝阳av一区二区三区| eeuss国产一区二区三区四区| 涩爱av在线播放一区二区| 欧美福利一区二区三区| 欧美成人亚洲成人| 97精品视频在线观看| 国产精品久久久久久久蜜臀| 亚洲精品自拍| 亚洲an天堂an在线观看| 日韩免费视频在线观看| 国产美女91呻吟求| yw.139尤物在线精品视频| 亚洲福利一二三区| 国内精品伊人久久久久av一坑| caoporn成人免费视频在线| 男女av在线| hbad中文字幕| 成人乱人伦精品视频在线观看| 亚洲老头同性xxxxx| 粉嫩老牛aⅴ一区二区三区| 精品综合免费视频观看| www.丝袜精品| 中文字幕乱码中文乱码51精品| 美女网站在线观看| 国产第一页在线视频| 男人天堂网在线| 中国丰满人妻videoshd| 成人国产精品一区二区| 欧美大胆人体bbbb| 一区二区在线观看视频| 亚洲夂夂婷婷色拍ww47| 亚洲国内精品视频| 中文字幕日韩av| 亚洲精品在线观看网站| 精品久久中文字幕| 亚洲欧美日韩在线| 精品在线一区二区| 国产一区欧美一区| 不卡视频在线观看| 在线视频三区| 久久福利视频导航| 精品久久久久久久大神国产| 久久久久成人黄色影片| 奇米四色…亚洲| 国产精品一区二区久久不卡| 99国产精品国产精品久久| 国产精品一区二区av交换| 久久综合给合| 岛国成人av| 首页亚洲中字| 日韩高清国产一区在线| 成av人片一区二区| 在线中文一区| 欧美日本二区| 亚洲综合小说| 亚洲一区国产一区| 99久久99久久精品免费看蜜桃| 亚洲女人小视频在线观看| 国产精品人人爽人人做我的可爱| 99视频精品全国免费| 香蕉久久夜色精品国产| 99在线视频精品| 欧美一区二区三区思思人| 国产精品视频色| 台湾成人av| 激情av网站| 137大胆人体在线观看| 免费观看成人www动漫视频| 久久精品亚洲麻豆av一区二区| 天天色综合天天| 最近2019中文字幕mv免费看| 欧美日韩成人免费| 国产精品久久精品国产| 日韩高清国产一区在线观看| 男女污污的视频| av最新在线| 青娱在线视频| jizz在线观看中文| 日韩精品第二页| 欧美午夜影院| 成人激情小说乱人伦| 精品国产乱子伦一区| 6080日韩午夜伦伦午夜伦| 色老头一区二区三区在线观看| 99九九电视剧免费观看| 白白色在线发布| 欧美男gay| 老妇喷水一区二区三区| 亚洲欧美日韩国产另类专区 | 免费a级人成a大片在线观看| 亚州av日韩av| 久久婷婷综合激情| 北条麻妃一区二区三区中文字幕| 9a蜜桃久久久久久免费| 成人永久免费网站| 9l亚洲国产成人精品一区二三 | 日本精品一区二区| 精品视频在线观看网站| 精品一区二区三区在线观看| 亚洲精品在线免费观看视频| 亚洲一区二区三区乱码aⅴ| 在线观看你懂| 欧美日韩经典丝袜| 国语产色综合| 欧美电影一区二区三区| 亚洲成人网上| 国产精品17p| 国产精品国产三级国产a| 美女视频黄免费的亚洲男人天堂| 激情小视频网站| 免费观看一级欧美片| 日本少妇一区二区| 狠狠爱在线视频一区| 国产亚洲欧美一区二区三区| 黄色网址在线免费| 粉嫩久久99精品久久久久久夜| 久久精品国产免费观看| 国产成人无码a区在线观看视频|