精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

HarmonyOS小游戲項(xiàng)目—數(shù)獨(dú)Sudoku(六)

系統(tǒng) OpenHarmony
本期筆者將在游戲內(nèi)導(dǎo)入更多題目,并實(shí)現(xiàn)游戲處于關(guān)卡選擇頁(yè)面時(shí)進(jìn)入不同關(guān)卡的頁(yè)面跳轉(zhuǎn)邏輯。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

前言

本期筆者將在游戲內(nèi)導(dǎo)入更多題目,并實(shí)現(xiàn)游戲處于關(guān)卡選擇頁(yè)面時(shí)進(jìn)入不同關(guān)卡的頁(yè)面跳轉(zhuǎn)邏輯。

正文

利用xml布局創(chuàng)建UI

打開entry>src>main>resouce>base>graphic,并在graphic目錄下新創(chuàng)建一個(gè)xml文件(可以通過復(fù)制粘貼graphic目錄下的其他xml文件來實(shí)現(xiàn)),將其命名為select_text.xml,最后在文件內(nèi)將代碼修改為如下:

<?xml version="1.0" encoding="UTF-8" ?>
<state-container xmlns:ohos="http://schemas.huawei.com/res/ohos" >
<item ohos:state="component_state_pressed" ohos:element="#007CFD"/>
<item ohos:state="component_state_empty" ohos:element="white"/>
</state-container>

接著,在graphic目錄下再次新創(chuàng)建一個(gè)xml文件,將其命名為select_text_exit.xml,并在文件內(nèi)添加如下代碼:

<?xml version="1.0" encoding="UTF-8" ?>
<state-container xmlns:ohos="http://schemas.huawei.com/res/ohos" >

<item ohos:state="component_state_pressed" ohos:element="red"/>
<item ohos:state="component_state_empty" ohos:element="white"/>
</state-container>

這樣以后,我們就完成了兩類組件背景元素的創(chuàng)建,而這兩類組件背景元素所實(shí)現(xiàn)的UI效果是:當(dāng)組件處于被點(diǎn)擊的狀態(tài)時(shí),組件改變顏色;當(dāng)組件未處于被點(diǎn)擊的·狀態(tài)時(shí),組件保持初始的顏色。

之后,打開entry>src>main>resouce>base>layout,并在layout目錄下新創(chuàng)建一個(gè)xml文件(可以通過復(fù)制粘貼layout目錄下的其他xml文件來實(shí)現(xiàn)),將其命名為select.xml。

最后在文件內(nèi)將代碼修改為如下:

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:orientation="vertical">
<Text
ohos:id="$+id:btn1"
ohos:background_element="$graphic:select_text" //引用先前創(chuàng)建的背景元素
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="第一關(guān) 入門"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"/>
<Text
ohos:id="$+id:btn2"
ohos:background_element="$graphic:select_text"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="第二關(guān) 初級(jí)"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"
/>
<Text
ohos:id="$+id:btn3"
ohos:background_element="$graphic:select_text"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="第三關(guān) 中級(jí)"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"
/>
<Text
ohos:id="$+id:btn4"
ohos:background_element="$graphic:select_text"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="第四關(guān) 中級(jí)"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"
/>
<Text
ohos:id="$+id:btn5"
ohos:background_element="$graphic:select_text"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="第五關(guān) 高級(jí)"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"
/>
<Text
ohos:id="$+id:Aa"
ohos:background_element="$graphic:select_text"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text_alignment="horizontal_center"
ohos:bottom_margin="15vp"
/>
<Text
ohos:id="$+id:btn6"
ohos:background_element="$graphic:select_text_exit"
ohos:height="match_content"
ohos:width="match_parent"
ohos:text_size="30vp"
ohos:text="退出"
ohos:text_alignment="horizontal_center"
ohos:top_margin="55vp"
/>
</DirectionalLayout>

這樣以后,我們就完成了基本的組件布局,當(dāng)然,此xml文件在后文是要與關(guān)卡選擇界面相綁定的。此時(shí)可以打開previewer預(yù)覽UI效果。

【木棉花】#打卡不停更#HarmonyOS小游戲項(xiàng)目——數(shù)獨(dú)Sudoku(6)-開源基礎(chǔ)軟件社區(qū)

在SelectAbilitySlice內(nèi)完善交互邏輯

打開先前創(chuàng)建的SelectAbilitySlice(目錄路徑:entry\src\main\java\com.example.project\slice\SelectAbilitySlice),將代碼修改為如下:

package ...
import ......
public class SelectAbilitySlice extends AbilitySlice { //繼承AbilitySlice類
private String level; //定義字符串level,
@Override
protected void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(ResourceTable.Layout_select);//綁定先前創(chuàng)建的layout類xml文件
}
@Override
protected void onActive() {
super.onActive();
//將select.xml文件中的6個(gè)text組件在AbilitySlice中聲明
Text text1=(Text) findComponentById(ResourceTable.Id_btn1);
Text text2=(Text) findComponentById(ResourceTable.Id_btn2);
Text text3=(Text) findComponentById(ResourceTable.Id_btn3);
Text text4=(Text) findComponentById(ResourceTable.Id_btn4);
Text text5=(Text) findComponentById(ResourceTable.Id_btn5);
Text text6=(Text) findComponentById(ResourceTable.Id_btn6);
Intent intent_go=new Intent();//創(chuàng)建一個(gè)intent對(duì)象
text1.setClickedListener((Component component)->{
intent_go.setParam("level","0");
present(new GameAbilitySlice(),intent_go);
});
text2.setClickedListener((Component component)->{
intent_go.setParam("level","1");
present(new GameAbilitySlice(),intent_go);
});
text3.setClickedListener((Component component)->{
intent_go.setParam("level","2");
presen(new GameAbilitySlice(),intent_go);
});
text4.setClickedListener((Component component)->{
intent_go.setParam("level","3");
present(new GameAbilitySlice(),intent_go);
});
text5.setClickedListener((Component component)->{
intent_go.setParam("level","4");
present(new GameAbilitySlice(),intent_go);
});
text6.setClickedListener((Component component)->{
terminate();
});
}
@Override
protected void onResult(int request_code,Intent intent_back){
super.onResult(request_code,intent_back);
}
@Override
protected void onForeground(Intent intent) {
super.onForeground(intent);
}
@Override
protected void onBackground() {
super.onBackground();
}
}

在此次的代碼添加中,筆者先是擴(kuò)展了SelectAbilitySlice的框架,并將SelectAbilitySlice與select.xml綁定,這樣以后SelectAbilitySlice就可以顯示select.xml內(nèi)設(shè)定的布局元素;接著,我們?cè)趏nActive()函數(shù)內(nèi)聲明了已在select.xml設(shè)定的6個(gè)text組件,并為每個(gè)text組件都設(shè)定了點(diǎn)擊監(jiān)聽器;最后,我們創(chuàng)建了一個(gè)intent對(duì)象,并在每個(gè)text對(duì)象的點(diǎn)擊監(jiān)聽器內(nèi)加入指令:將需要傳遞的數(shù)字信息以字符串的形式儲(chǔ)存在inent中,并調(diào)用present()函數(shù)執(zhí)行頁(yè)面跳轉(zhuǎn)(從SelectAbilitySlice跳轉(zhuǎn)至新創(chuàng)建的GameAbilitySlice)。由于intent是兩個(gè)AbilitySlice的信息傳遞媒介,故當(dāng)頁(yè)面導(dǎo)航至新生成的GameAbilitySlice時(shí),GameAbilitySlice可以接收到來自SelectAbilitySlice的intent,而這個(gè)intent也是攜帶重要的數(shù)字信息的(點(diǎn)擊不同的text組件,intent所攜帶的數(shù)字信息也不同)。關(guān)于intent的接收,筆者將在后文闡述。

完成上述操作后,我們打開MainAbilitySlice,設(shè)置其頁(yè)面導(dǎo)航路由,使得我們?cè)谥鹘缑纥c(diǎn)擊“開始游戲”后,系統(tǒng)界面可以從主界面跳轉(zhuǎn)至關(guān)卡選擇界面:

public class MainAbilitySlice extends AbilitySlice {
@Override
...
@Override
public void onActive() {
super.onActive();
//通過id號(hào)獲取xml文件中的button組件
Button button1=(Button) findComponentById(ResourceTable.Id_Game);
button1.setClickedListener(new Component.ClickedListener() {
@Override
public void onClick(Component component) {
present(new SelectAbilitySlice(),new Intent());//點(diǎn)擊此組件后,頁(yè)面將從MainAbilitySlice跳轉(zhuǎn)至SelectAbilitySlice
}
});
}

@Override
...

再打開MainAbility,將PageAbility默認(rèn)展示界面改為InitialAbilitySlice:

......
public class MainAbility extends Ability {
@Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setMainRoute(InitialAbilitySlice.class.getName()); //將參數(shù)改為改為InitialAbilitySlice
}
}

完成以上操作后,我們可以打開模擬機(jī)查看效果:當(dāng)界面跳轉(zhuǎn)至游戲的主界面時(shí),我們點(diǎn)擊“開始游戲”,游戲則會(huì)跳轉(zhuǎn)到關(guān)卡選擇的畫面。

【木棉花】#打卡不停更#HarmonyOS小游戲項(xiàng)目——數(shù)獨(dú)Sudoku(6)-開源基礎(chǔ)軟件社區(qū)

點(diǎn)擊:

【木棉花】#打卡不停更#HarmonyOS小游戲項(xiàng)目——數(shù)獨(dú)Sudoku(6)-開源基礎(chǔ)軟件社區(qū)

導(dǎo)入更多的數(shù)獨(dú)題目

在GameAbilitySlice合適的位置加入如下八個(gè)數(shù)組(局部變量),其中,前四個(gè)數(shù)組用做數(shù)獨(dú)題答案,后四個(gè)數(shù)組則將用于題目的初始化、與用戶交互。

...
@Override
protected void onStart(Intent intent) {
super.onStart(intent);
....
//答案
int[][] grid_v1=new int[6][];
grid_v1[0]=new int[]{5,4,3,1,2,6};
grid_v1[1]=new int[]{6,3,4,2,5,1};
grid_v1[2]=new int[]{2,1,6,5,3,4};
grid_v1[3]=new int[]{3,5,1,6,4,2};
grid_v1[4]=new int[]{4,6,2,3,1,5};
grid_v1[5]=new int[]{1,2,5,4,6,3};
int[][] grid_v2=new int[6][];
grid_v2[0]=new int[]{5,6,1,2,3,4};
grid_v2[1]=new int[]{1,3,5,4,2,6};
grid_v2[2]=new int[]{2,4,6,3,5,1};
grid_v2[3]=new int[]{6,5,2,1,4,3};
grid_v2[4]=new int[]{3,1,4,5,6,2};
grid_v2[5]=new int[]{4,2,3,6,1,5};
int[][] grid_v3=new int[6][];
grid_v3[0]=new int[]{2,1,3,6,4,5};
grid_v3[1]=new int[]{5,4,1,2,3,6};
grid_v3[2]=new int[]{6,3,5,4,2,1};
grid_v3[3]=new int[]{1,6,4,3,5,2};
grid_v3[4]=new int[]{4,2,6,5,1,3};
grid_v3[5]=new int[]{3,5,2,1,6,4};
int[][] grid_v4=new int[6][];
grid_v4[0]=new int[]{5,2,3,4,1,6};
grid_v4[1]=new int[]{6,4,2,1,5,3};
grid_v4[2]=new int[]{3,1,5,6,2,4};
grid_v4[3]=new int[]{1,3,4,2,6,5};
grid_v4[4]=new int[]{2,5,6,3,4,1};
grid_v4[5]=new int[]{4,6,1,5,3,2};
//題目
int[][] grid_c1=new int[6][];
grid_c1[0]=new int[]{5,0,3,0,2,0};
grid_c1[1]=new int[]{0,0,4,2,0,1};
grid_c1[2]=new int[]{2,1,0,0,3,0};
grid_c1[3]=new int[]{0,5,0,0,4,2};
grid_c1[4]=new int[]{4,0,2,3,0,0};
grid_c1[5]=new int[]{0,2,0,4,0,3};
int[][] grid_c2=new int[6][];
grid_c2[0]=new int[]{0,0,1,2,0,0};
grid_c2[1]=new int[]{0,0,0,0,0,0};
grid_c2[2]=new int[]{0,0,0,3,0,1};
grid_c2[3]=new int[]{0,5,2,0,0,3};
grid_c2[4]=new int[]{0,1,4,5,0,2};
grid_c2[5]=new int[]{4,0,0,0,0,0};
int[][] grid_c3=new int[6][];
grid_c3[0]=new int[]{2,0,3,0,4,5};
grid_c3[1]=new int[]{0,0,0,0,0,0};
grid_c3[2]=new int[]{0,0,0,0,2,1};
grid_c3[3]=new int[]{1,6,0,0,0,0};
grid_c3[4]=new int[]{0,0,0,0,0,0};
grid_c3[5]=new int[]{3,5,0,1,0,4};
int[][] grid_c4=new int[6][];
grid_c4[0]=new int[]{5,0,0,0,1,6};
grid_c4[1]=new int[]{0,0,2,0,0,0};
grid_c4[2]=new int[]{0,1,0,0,0,0};
grid_c4[3]=new int[]{0,0,0,0,6,0};
grid_c4[4]=new int[]{0,0,0,3,0,0};
grid_c4[5]=new int[]{4,6,0,0,0,2};
...

之后,定義一個(gè)新的二維數(shù)組grids_initial(可以是局部變量也可以是局部變量):

int[][] grids_initial=new  int[6][];

先找到之前用于創(chuàng)建網(wǎng)格區(qū)域的二重for循環(huán):

for (y=0;y<6;y++){
for (x=0;x < 6; x++) {
Button button = new Button(this);
button.setTouchFocusable(true);
number=grid_c0[x][y];
string0=String.valueOf(number);
....

然后進(jìn)行如下修改(即將數(shù)組grid_c0改為數(shù)組grids_initial):

for (y=0;y<6;y++){
for (x=0;x < 6; x++) {
Button button = new Button(this);
button.setTouchFocusable(true);
number=grids_initial[x][y];//將數(shù)組grid_c0改為數(shù)組grids_initial
string0=String.valueOf(number);
...

這樣以后,grids_initial就作為唯一用于生成游戲題目的數(shù)組變量了。

最后,刪除之前在onStart()函數(shù)內(nèi)添加的以下賦值代碼:

grids_input=grid_c0;
grids_win=grid_v0;

獲取intent

終于來到最后一個(gè)環(huán)節(jié)了。在前文的內(nèi)容中,我們已經(jīng)實(shí)現(xiàn)了一個(gè)功能:系統(tǒng)從SelectAbilitySlice導(dǎo)航至GameAbilitySlice時(shí),GameAbilitySlice可以接收到包含數(shù)字信息的intent。

那么如何獲取intent中的信息呢?如下列代碼所示,我們通過getStringParam方法接收從SelectAbilitySlice傳入的intent,并提取其攜帶的字符串信息(其所對(duì)應(yīng)的鍵是"level"),再將此字符串轉(zhuǎn)化為整形數(shù)據(jù),最后存儲(chǔ)在一個(gè)新聲明的整型變量L中。因?yàn)閕ntent中存儲(chǔ)的字符串代表用戶想要進(jìn)入的關(guān)卡,所以在得到L以后,我們通過switch來判斷用戶點(diǎn)擊的是第幾關(guān),并將對(duì)應(yīng)關(guān)卡的題目與答案分別賦給三個(gè)數(shù)組變量:grids_win,grids_input與grids_initial。

......
@Override
protected void onStart(Intent intent) {
super.onStart(intent);
grid_c0[0]=new int[]{0,0,0,0,1,0};
.......
//獲取intent
int L=Integer.parseInt(intent.getStringParam("level"));
//判斷
switch (L){
case 0: grids_win=grid_v0;grids_input=grid_c0;grids_initial=grid_c0;break;
case 1: grids_win=grid_v1;grids_input=grid_c1;grids_initial=grid_c1;break;
case 2: grids_win=grid_v2;grids_input=grid_c2;grids_initial=grid_c2;break;
case 3: grids_win=grid_v3;grids_input=grid_c3;grids_initial=grid_c3;break;
case 4: grids_win=grid_v4;grids_input=grid_c4;grids_initial=grid_c4;break;
}

這樣以后,當(dāng)用戶進(jìn)入不同關(guān)卡時(shí),GameAbilitySlice的題目會(huì)根據(jù)grids_initial初始化,判斷游戲成功與否的Gamesuccess()函數(shù)也會(huì)獲取對(duì)應(yīng)的信息與成功條件,我們也就實(shí)現(xiàn)了游戲處于關(guān)卡選擇頁(yè)面時(shí)進(jìn)入不同關(guān)卡的頁(yè)面跳轉(zhuǎn)邏輯與功能

此時(shí)我們可以打開模擬器查看交互效果:

點(diǎn)擊“第二關(guān)”:

【木棉花】#打卡不停更#HarmonyOS小游戲項(xiàng)目——數(shù)獨(dú)Sudoku(6)-開源基礎(chǔ)軟件社區(qū)

進(jìn)入第二關(guān):

【木棉花】#打卡不停更#HarmonyOS小游戲項(xiàng)目——數(shù)獨(dú)Sudoku(6)-開源基礎(chǔ)軟件社區(qū)

結(jié)語(yǔ)

本期的內(nèi)容就先分享到這里,更多關(guān)于數(shù)獨(dú)小游戲項(xiàng)目精彩的內(nèi)容我將在下期繼續(xù)為大家揭曉。

???想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??。

責(zé)任編輯:jianghua 來源: 51CTO開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2022-07-29 14:47:34

數(shù)獨(dú)Sudoku鴻蒙

2022-10-18 15:45:17

數(shù)獨(dú)Sudoku鴻蒙

2022-10-19 15:27:36

數(shù)獨(dú)Sudoku鴻蒙

2013-06-17 12:44:38

WP7開發(fā)Windows Pho數(shù)獨(dú)游戲

2023-08-07 15:18:29

游戲開發(fā)鴻蒙Arkts

2024-07-31 09:46:13

2011-09-16 10:35:13

Android應(yīng)用數(shù)獨(dú)經(jīng)典游戲

2022-08-25 21:41:43

ArkUI鴻蒙

2022-11-01 15:17:48

JS鴻蒙小游戲

2022-03-24 08:33:58

小游戲項(xiàng)目cmdvue3

2021-01-15 12:15:36

鴻蒙HarmonyOS游戲

2021-01-12 12:16:55

鴻蒙HarmonyOS游戲

2023-11-06 11:33:15

C++數(shù)獨(dú)

2021-09-06 08:26:08

JavaScript數(shù)獨(dú) LeetCode

2012-01-10 12:48:52

Java

2015-09-29 09:38:50

Java程序猜大小

2022-07-08 14:53:46

掃雷小游戲鴻蒙

2022-02-11 14:39:11

游戲JS鴻蒙

2022-02-11 14:02:09

游戲JS鴻蒙

2022-10-28 16:20:10

JS鴻蒙小游戲
點(diǎn)贊
收藏

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

亚洲免费影视第一页| 亚洲第一精品在线| 国产精品香蕉av| 国产精品夜夜夜爽阿娇| 国产一区二区| 午夜精品久久久久久久99水蜜桃| 欧美成人第一区| 中文天堂在线播放| 午夜精品视频| 亚洲精品中文字幕av| 欧美午夜aaaaaa免费视频| 国产黄网站在线观看| 成人性色生活片| 欧美中文字幕在线播放| 国产在线免费看| 国产精品一线| 欧美日韩三级视频| 国产精品69久久久| 1024国产在线| 99久久国产综合色|国产精品| 国产精品高潮视频| 欧美成人精品欧美一级| 亚洲v天堂v手机在线| 91精品欧美综合在线观看最新| 免费国产黄色网址| 黄色成人影院| 国产三级一区二区| 国产精品免费看一区二区三区| 波多野结衣一区二区三区四区| 欧美日韩午夜| 日韩中文字幕网站| 国产特级黄色录像| 第一区第二区在线| 91精品免费观看| 久久精品一区二| 久久亚洲资源| 日韩一区欧美小说| 日韩精品一线二线三线| 日本xxxxwww| 国产真实乱偷精品视频免| 国产www精品| 99热国产在线观看| 好吊一区二区三区| 欧美日本精品在线| 欧美黄色aaa| 久久国产精品亚洲人一区二区三区 | 久久久久久色| 韩国美女主播一区| 久热精品在线观看| 欧美日本不卡| 欧美另类极品videosbestfree| 亚洲精品视频网址| 精品免费在线| 国产婷婷色综合av蜜臀av | 成人免费视频国产免费| 亚洲人成毛片在线播放女女| 欧美激情啊啊啊| 91九色丨porny丨极品女神| 91一区二区| 色噜噜狠狠狠综合曰曰曰 | 亚洲激情图片一区| www.黄色网址.com| 在线观看男女av免费网址| 亚洲欧美日韩久久| 国产经典久久久| 制服丝袜中文字幕在线| 亚洲精品福利视频网站| 强开小嫩苞一区二区三区网站| 黄色国产网站在线播放| 亚洲精品高清在线| 高清欧美精品xxxxx| 黄色污网站在线观看| 婷婷丁香激情综合| www.xxx亚洲| 天天综合网站| 欧美日韩mp4| 中文字幕视频三区| 中文字幕一区日韩精品| 欧美zozozo| 国产乱了高清露脸对白| 国产探花在线精品一区二区| 中文字幕亚洲激情| 国产精品三区在线观看| 国内精品福利| 日韩av免费在线看| 一道本无吗一区| 国产精品自在在线| 精品在线不卡| 色的视频在线免费看| 亚洲色图欧美偷拍| 免费观看美女裸体网站| 91成人在线| 日韩欧美一区在线| av2014天堂网| 日韩av二区| 欧美黄色三级网站| www.久久久久久久| 国产一区二区h| 麻豆久久久9性大片| 91社区在线| 亚洲一区精品在线| 老熟妇仑乱视频一区二区| 韩国一区二区三区视频| 亚洲精品色婷婷福利天堂| 国产午夜精品久久久久久久久| 欧美精品入口| 国产成人在线视频| 成人1区2区3区| 国产亚洲午夜高清国产拍精品 | 丝袜熟女一区二区三区 | 精品一区二区精品| 久久狠狠久久综合桃花| 免费网站看v片在线a| 调教+趴+乳夹+国产+精品| 日韩欧美亚洲另类| 九色成人国产蝌蚪91| 久久久久久久91| 在线观看一二三区| 91免费国产视频网站| 日本三日本三级少妇三级66| 欧美黑人一区| 精品日韩在线观看| www.99re6| 久久最新视频| 国产主播一区二区三区四区| 黄色在线观看网站| 欧美影院一区二区| www.免费av| 国产精品s色| 国产视频999| 国产精品一区二区婷婷| 精品久久中文字幕久久av| 五月天六月丁香| 97精品一区| 国产精品偷伦视频免费观看国产| 青青免费在线视频| 婷婷六月综合网| 亚洲天堂2024| 亚洲久久一区| 国产精品二区在线| 性欧美ⅴideo另类hd| 欧美巨大另类极品videosbest | 久久综合免费视频影院| 在线免费看av片| 国产精品视频麻豆| 三级视频中文字幕| 日本欧美国产| 国产精品男女猛烈高潮激情| 国产中文字幕在线观看| 动漫精品一区二区| 国产乱了高清露脸对白| 在线综合视频| 蜜桃av噜噜一区二区三区| 韩日毛片在线观看| 亚洲免费一在线| 婷婷激情五月综合| 欧美高清在线视频| 午夜宅男在线视频| 99久久婷婷| 51国偷自产一区二区三区 | 国产夫妻在线观看| 亚洲精品国久久99热| 亚洲少妇一区二区三区| 黄色日韩精品| 精品免费日产一区一区三区免费| 高清毛片在线观看| 亚洲视频axxx| 亚洲字幕av一区二区三区四区| 一区在线观看视频| 毛毛毛毛毛毛毛片123| 亚洲手机在线| 久久精品中文字幕一区二区三区 | 国产精品女人网站| 免费观看在线午夜影视| 91精品国产色综合久久久蜜香臀| 欧美日韩中文字幕在线观看 | 欧美亚洲动漫另类| 男人在线观看视频| 成人深夜在线观看| 日韩视频在线免费看| 久久精品国产亚洲夜色av网站| 国产日韩中文字幕| 超碰97国产精品人人cao| 亚洲乱码一区av黑人高潮| 国产精品国产精品国产| 亚洲黄色免费电影| 久久人人爽人人爽人人片| 美日韩一区二区三区| 国内自拍中文字幕| 婷婷综合福利| 91久久精品在线| 国产社区精品视频| 色老头一区二区三区| 亚洲精品一区二区三区四区| 欧美性猛交xxxx免费看久久久| 国产三级在线观看完整版| 国产99一区视频免费| 1024精品视频| 一个色综合网| 清纯唯美一区二区三区| 网站一区二区| 国产精品扒开腿做爽爽爽男男| 羞羞电影在线观看www| 亚洲欧美激情一区| www.色日本| 欧美午夜片欧美片在线观看| 国产高潮国产高潮久久久91| 91麻豆成人久久精品二区三区| 国产精品一区二区小说| 亚洲精选91| 黄色一级片网址| 久久99久久人婷婷精品综合| 成人高清在线观看| 国产精品一区二区免费福利视频 | 无遮挡亚洲一区| 粉嫩精品导航导航| 91色精品视频在线| 青青热久免费精品视频在线18| 欧美激情综合色综合啪啪五月| aaa在线观看| 日韩成人激情在线| 亚洲av色香蕉一区二区三区| 欧美日韩免费观看一区二区三区 | 亚洲国产国产亚洲一二三| 中文字幕一区二区三区有限公司 | 日韩欧美一区二区在线观看| 91成人午夜| 91久久精品国产91久久性色| 九九热线视频只有这里最精品| 97视频在线观看视频免费视频 | 亚洲欧洲综合另类在线| 最近中文字幕在线mv视频在线 | 91在线观看免费高清| 日韩精品第一| 日本精品一区二区三区在线| 69av成人| 欧美国产日产韩国视频| 国产黄色小视频在线| 精品国产一区二区三区久久久狼 | 波多野结衣一二区| 一本一本大道香蕉久在线精品| 91久久国产视频| 五月天欧美精品| 日本一二三区视频| 亚洲国产va精品久久久不卡综合| 国产成人久久久久| 综合欧美一区二区三区| 免费精品在线视频| 亚洲欧洲综合另类| 九九在线观看视频| 亚洲一区欧美一区| 国产视频91在线| 婷婷一区二区三区| 探花视频在线观看| 一本到高清视频免费精品| 日韩欧美三级视频| 色婷婷综合久久| 欧美一区二区三区久久久| 在线观看日韩精品| 一道本无吗一区| 69精品人人人人| 精品黑人一区二区三区在线观看| 日韩欧美成人午夜| 天天干在线观看| 亚洲欧洲国产伦综合| av在线免费观看网站| 中文字幕国产精品久久| 韩国av网站在线| 欧美高跟鞋交xxxxxhd| h片在线观看视频免费| 欧洲中文字幕国产精品| 91国内外精品自在线播放| 成人精品福利视频| 北条麻妃在线一区二区免费播放| 国产精品久久久一区二区三区| 日韩动漫一区| 五月天色一区| 欧美日韩第一区| 美女av免费在线观看| 日韩电影免费一区| 亚洲最大天堂网| 成人高清视频在线观看| 99久久人妻无码精品系列| 国产精品福利在线播放| 九九九在线视频| 色视频成人在线观看免| 在线免费观看一区二区| 亚洲第一中文字幕| 国产69精品久久app免费版| 久久精品99久久久久久久久| 成人福利影视| 国产精品久久久久久久久久东京| 玖玖精品一区| 欧洲一区二区在线观看| 欧美在线三级| 日本黄色三级大片| 激情六月婷婷久久| 动漫精品一区二区三区| 亚洲女性喷水在线观看一区| 中文字幕国产在线观看| 欧美一区二区三区的| 麻豆导航在线观看| 欧美精品电影在线| 狠狠久久伊人中文字幕| 狠狠色综合欧美激情| 婷婷综合激情| 麻豆av免费在线| 国产91在线看| 日本少妇aaa| 色综合久久综合网| 日本黄色免费视频| 久久久999精品视频| 欧美极度另类| 久久青青草原| 欧美日韩1080p| 日本在线播放一区二区| 久久在线观看免费| 激情综合网五月天| 欧美久久一二区| 成人欧美亚洲| 奇米4444一区二区三区| 99久热这里只有精品视频免费观看| 五月天亚洲综合| 天堂蜜桃一区二区三区| 手机免费看av片| 亚洲欧美aⅴ...| 中文字幕乱码人妻二区三区| 亚洲精品自拍视频| 99re6在线精品视频免费播放| 亚洲第一福利网站| 91久久精品久久国产性色也91| 天堂成人av| 国产日韩欧美另类| 精品亚洲成人| 女人另类性混交zo| 91美女片黄在线观看91美女| 免费一级肉体全黄毛片| 3atv一区二区三区| 免费av在线网站| 国产精品中文字幕在线观看| 欧美日韩色图| 孩娇小videos精品| 欧美国产精品v| 中文字幕永久在线| 国产一区二区日韩| 成人亚洲免费| 日韩欧美三级一区二区| 日韩成人午夜精品| 日韩毛片无码永久免费看| 一本大道久久精品懂色aⅴ| 久久久久久女乱国产| 日韩av免费在线看| jizzjizz欧美69巨大| 波多结衣在线观看| 国产精品久久久久毛片软件| 国产又粗又长视频| 久久久999精品视频| 日韩在线网址| 97久久国产亚洲精品超碰热| 福利一区二区在线| 五月婷婷激情网| 亚洲精品一区二区三区婷婷月| 成人av免费电影网站| 日韩国产欧美精品| 精品一区二区三区在线视频| 天天看片中文字幕| 精品粉嫩aⅴ一区二区三区四区| 草美女在线观看| 久久久久久久久四区三区| 久久综合伊人| 国产精品国产三级国产传播| 欧美电影免费提供在线观看| 福利在线导航136| 欧美不卡三区| 精品写真视频在线观看| 国产亚洲精品成人| 国产丝袜精品视频| 偷拍自拍亚洲| 国产精彩视频一区二区| 久久嫩草精品久久久精品| 中文字幕无码乱码人妻日韩精品| 久久人人爽亚洲精品天堂| 99这里只有精品视频| 日本成人中文字幕在线| 综合色中文字幕| 涩爱av在线播放一区二区| 国产又爽又黄的激情精品视频| 欧美国产高潮xxxx1819| 国产国语性生话播放| 欧美日韩久久久久久| 国产盗摄一区二区| 午夜精品电影在线观看| 国产99精品国产| 精人妻无码一区二区三区| 久热爱精品视频线路一| 日韩精品福利一区二区三区| 性生活免费在线观看| 午夜精品久久久久久久久久久| 成年在线电影| 九九九九精品九九九九|