久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

Android實驗報告—UI設計(定稿)

時間:2019-05-12 11:59:22下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《Android實驗報告—UI設計(定稿)》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《Android實驗報告—UI設計(定稿)》。

第一篇:Android實驗報告—UI設計(定稿)

Android UI設計

實驗目的:

本實驗的目的是使學生深入了解Android程序框架結構、了解和掌握Android界面設計和界面編程。通過程序設計,掌握常用界面控件、菜單、以及界面事件的響應。

實驗要求:

設計程序實現一個電子菜單,應具有顯示菜單功能和選菜功能。通過選擇,將選中的菜單選項在界面做顯示,如下圖:

[實現提示]

1、建立Android工程,其中 工程名稱:MenuSelect579 應用名稱:MenuSelect579 包名稱:cn.edu.bistu.dj1001.MenuSelect579 Activity名稱:MenuSelect579

2、工程建立完畢后,進行相應界面設計,再編寫Java文件

程序源碼

package cn.edu.bistu.dj1001.MenuSelect579;import android.app.Activity;

import android.os.Bundle;import android.view.ContextMenu;import android.view.ContextMenu.ContextMenuInfo;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.TextView;public class MenuSelect579 extends Activity {

/** Called when the activity is first created.*/

TextView LabelView = null;

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

LabelView =(TextView)findViewById(R.id.label);registerForContextMenu(LabelView);

}

final static int CONTEXT_MENU_1 = Menu.FIRST;

final static int CONTEXT_MENU_2 = Menu.FIRST+1;

final static int CONTEXT_MENU_3 = Menu.FIRST+2;

@Override

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo){

menu.setHeaderTitle(“今日菜單”);

menu.add(0, CONTEXT_MENU_1, 0,“宮保雞丁”);

menu.add(0, CONTEXT_MENU_2, 1,“干煸豆角”);

menu.add(0, CONTEXT_MENU_3, 2,“魚香肉絲”);

}

@Override

}

public boolean onContextItemSelected(MenuItem item){

} switch(item.getItemId()){

case CONTEXT_MENU_1: LabelView.setText(“宮保雞丁”);return true;case CONTEXT_MENU_2: LabelView.setText(“干煸豆角”);return true;case CONTEXT_MENU_3: LabelView.setText(“魚香肉絲”);return true;} return false;

程序運行結果:

實驗心得體會:(可選)

通過本次實驗熟悉了android的界面設計簡單方法和界面編程,鍛煉了實際動手能力,熟悉了 Android程序框架結構、Android界面設通過程序設計,掌握了常用界面控件、菜單、以及界面事件的響應。

第二篇:android實驗報告

移動應用開發實驗報告

實驗名稱

音樂播放器

指導教師

實驗成績

2016 年04月

一、實驗目的

本項目是一款基于Android手機平臺的音樂播放器,使Android手機擁有個性的多媒體播放器,使手機顯得更生動靈活化,與人們更為接近,讓手機主人隨時隨地處于音樂視頻的旋律之中。使人們的生活更加多樣化。也使設計者更加熟練Android的技術和其它在市場上的特點。

二、實驗內容及要求

在其中寫清楚這個實驗具體要你做什么,怎么做,要達到什么樣的效果等。本設計實現的主要功能是播放Mp3,Wav多種格式的音樂文件,并且能夠控制播放,暫停,停止,下一首,上一首播放列等基本播放控制功能,界面簡明,操作簡單。

三、實驗方案設計

在其中寫清楚你的程序的詳細設計,用流程圖配文字的形式描述。如果其中涉及到算法,一定要把算法闡述清楚。

3.1.1假設安裝了音樂播放器的用戶是系統的主要設計對象,其擁有以下操作,啟動軟件、播放音樂、暫停播放、停止播放、退出軟件,其用例圖如下

圖2.1 播放器基本用例圖

3.1.2用例分析 ?用例名稱:啟動軟件 參與者:用戶

目標:使得用戶啟動軟件并加載手機和sd卡上的音頻文件到播放列表 前置條件:無

基本事件流:1.用戶啟動軟件

2.播放器將播放列表中的當前的歌曲

?用例名稱:播放 參與者:用戶

目標:使得用戶可以播放在播放列表中選中的歌曲 前置條件:播放器正在運行

基本事件流:1.用戶單擊“播放”按鈕

2.播放器將播放列表中的當前的歌曲

?用例名稱:暫停 參與者:用戶

目標:使得用戶可以暫停正在播放的歌曲 前置條件:歌曲正在播放且未停止和暫停 基本事件流:1.用戶單擊“暫停”按鈕

2.播放器將暫停當前的歌曲

④用例名稱:停止 參與者:用戶

目標:使得用戶可以停止正在播放的歌曲 前置條件:歌曲正在播放或暫停 基本事件流:1.用戶單擊“停止”按鈕

2.播放器將停止當前播放的歌曲

⑤用例名稱:推出 參與者:用戶

目標:使得用戶退出或者后臺播放音樂 前置條件:程序在運行

基本事件流:1.用戶按返回鍵

2.播放器退出或者進入后臺播放

四、實驗測試

Step1.啟動軟件后,軟件自動檢索手機和sd卡的音頻文件,并組織顯示成列表.Step2.點擊列表的歌曲名字。

Step3.播放音樂。

Step4.點擊暫停,音樂暫停

Step5.點擊播放 轉到step3 Step6.點擊停止 停止播放音樂

Step7.點擊退出,若音樂處于播放狀態,則音樂轉向后臺播放,界面退出。

Step8.點擊退戶,若音樂處于暫停或者停止狀態,直接退出。

音樂播放器流程圖

4.1MusicInfoController類

這個類繼承于service,是播放音樂的服務類。播放音樂,暫停音樂,停止播放等操作都封裝在這個類中。

主要的執行動作有:

4.1.1.類啟動 onCreate(){

mMediaPlayer = new MediaPlayer();//分配一個播放對象

mMediaPlayer.setOnPreparedListener(mPrepareListener);//綁定之前

mMediaPlayer.setOnCompletionListener(mCompleteListener);//綁定之 后

}

4.1.2.服務綁定activity

MediaPlayer.OnCompletionListener mCompleteListener = new

MediaPlayer.OnCompletionListener()//實例化一個綁定監聽器的匿名類

{

public void onCompletion(MediaPlayer mp)//完成綁定后

{

broadcastEvent(PLAY_COMPLETED);//廣播消息

}

};

4.2MusicInfoController類

這個類主要用于獲取android系統中的音頻文件,并提供訪問接口,它是一個單例類。

4.2.1獲得播放文件列表

private Cursor query(Uri uri, String[] prjs, String selections, String[] selectArgs, String order){ ContentResolver resolver = pApp.getContentResolver();//取得一個連接對象if(resolver == null){

return null;

}

return resolver.query(uri, prjs, selections, selectArgs, order);} public Cursor getAllSongs(){

return query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER);//查詢ContentResolver 的所有音頻文件

} 4.3MusicList類

改類繼承于ListActivity,主要用于顯示歌曲列表,并且封裝部分操作,以及與父級目標通信。

4.3.1播放

protected void onListItemClick(ListView l, View v, int position, long id){ //歌曲列表的某項被點擊

super.onListItemClick(l, v, position, id);

if(mCursor == null ||mCursor.getCount()== 0){

return;

}

mCursor.moveToPosition(position);//游標移動到當前路徑

String url = mCursor.getString(mCursor

.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));//取得絕對路徑

mMusicPlayerService.setDataSource(url);//傳遞絕對路徑

mMusicPlayerService.start();//播放音樂

}

4.3.2暫停/播放

mPlayPauseButton.setOnClickListener(new Button.OnClickListener(){

public void onClick(View v){

if(mMusicPlayerService!= null &&

mMusicPlayerService.isPlaying()){

mMusicPlayerService.pause();//音樂播放的服務暫停

mPlayPauseButton.setText(R.string.play);//改變按鈕文字

} else if(mMusicPlayerService!= null){

mMusicPlayerService.start();//如果已經是暫停,則播放音樂

mPlayPauseButton.setText(R.string.pause);//改變文字

}

}

});

4.3.3停止

mStopButton.setOnClickListener(new Button.OnClickListener(){

public void onClick(View v){

// Perform action on click

if(mMusicPlayerService!= null){

mTextView.setVisibility(View.VISIBLE);//改變文字狀態

mPlayPauseButton.setVisibility(View.INVISIBLE);//隱藏按鈕

mStopButton.setVisibility(View.INVISIBLE);//隱藏停止按鈕

mMusicPlayerService.stop();//后臺音樂停止播放

}

}

});4.4MusicPlayerApp類

該類繼承與Application,是程序的生存類。可以標識音樂播放器的生命周期,包括音樂在后臺播放等。

4.4.1單例模式

public void onCreate(){

super.onCreate();

mMusicInfoController = MusicInfoController.getInstance(this);//返回該類的一個唯一實例

}

public MusicInfoController getMusicInfoController(){

return mMusicInfoController;}

五、程序的使用手冊

系統編譯生成apk文件,將apk文件拷到手機或者sd卡中,直接打開即可安裝,或者安裝360手機助手通過usb調試的方式進行安裝。

啟動軟件后,加載歌曲列表現在這個界面上,如01表示歌曲名,unknown表示歌曲的演唱者

軟件啟動界面

從加載的歌曲列表中點擊要播放的歌曲,開始播放

音樂播放界面

六、心得體會

通過對Android手機平臺的音樂播放器軟件的開發,使我對Android音樂播放器系統的整體設計有一個深入的了解,對整個流程也會有一個清晰的認識。開發Android音樂播放器,要抓住開發的核心部分,音樂播放器大體由播放主界面、播放列表、菜單、播放設置、文件瀏覽、歌曲搜索六大核心組成,只要掌握了這六部分的開發,音樂播放器就能初具規模。而其它的功能都是在這六個功能的基礎上去補充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂播放器了。

第三篇:Android實驗報告—網絡通信

實驗三

Android網絡通信

實驗目的:

本實驗的目的是使學生深入了解利用Intent實現進程間的通信過程。學會利用Intent進行Activity的跳轉,以及鏈接網頁信息;學會利用Intent將其他Activity的信息返回到Activity中的方法。體會Activity間通信的過程。

實驗要求:

編程實現下述功能:主界面上有一個“登錄”按鈕和“鏈接網頁”按鈕,點擊“登錄”按鈕后打開一個新的Activity;新的Activity上面有輸入用戶名和密碼的控件(如下圖所示)點擊“鏈接網頁”按鈕,新的Activity上面有輸入Uri信息的控件,可以鏈接到相應的網站,在用戶關閉這個Activity后,返回到主界面中

程序界面如下圖所示:

[實現提示]

1、建立Android工程,其中 工程名稱:WebCommunication579

包名稱:cn.edu.bistu.dj1001.WebCommunication579 Activity名稱:WebCommunication579

2、工程建立完畢后,首先進行界面設計,建立相應的子Layout界面

3、在工程中添加相應的.java文件,處理各個Activity的事件響應

4、在Manifest中添加新建的Activity信息,進行注冊。

程序源碼:

主界面java文件代碼: package cn.deu.bistu.dj1001.WebCommunication579;

import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;

public class WebCommunication579 extends Activity { private Button btnLogin,btnGoToWeb;private TextView show;private static final int SUBACTIVITY1 = 1;@Override

public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.main);btnLogin=(Button)findViewById(R.id.btnLogin);btnGoToWeb=(Button)findViewById(R.id.btnGoToWeb);show=(TextView)findViewById(R.id.A1show);

btnLogin.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(WebCommunication592.this, activity1.class);

startActivityForResult(intent, SUBACTIVITY1);

}});btnGoToWeb.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(WebCommunication592.this, activity2.class);startActivity(intent);}});} protected void onActivityResult(int requestCode, int resultCode, Intent data){ super.onActivityResult(requestCode, resultCode, data);switch(requestCode){ case SUBACTIVITY1: if(resultCode == RESULT_OK){Uri uriData = data.getData();show.setText(uriData.toString());} break;}};} 界面一java文件代碼:

package cn.deu.bistu.dj1001.WebCommunication579;

import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;

public class activity1 extends Activity { private Button btnOK,btnCancel;private EditText edtInput;public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.activity1);edtInput=(EditText)findViewById(R.id.edtA1Input);btnOK=(Button)findViewById(R.id.btnA1OK);btnCancel=(Button)findViewById(R.id.btnA1Cancel);btnOK.setOnClickListener(new OnClickListener(){

public void onClick(View v){ String uriString = edtInput.getText().toString();Uri data = Uri.parse(uriString);Intent result = new Intent(null, data);setResult(RESULT_OK, result);finish();}});btnCancel.setOnClickListener(new OnClickListener(){ public void onClick(View view){ finish();}});}} 界面二java文件代碼:

package cn.deu.bistu.dj1001.WebCommunication579;

import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;

import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;

public class activity2 extends Activity { private EditText edtInput;private Button btnOK,btnCancel;public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.activity2);edtInput=(EditText)findViewById(R.id.edtA2Input);btnOK=(Button)findViewById(R.id.btnA2OK);btnCancel=(Button)findViewById(R.id.btnA2Cancel);btnOK.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(edtInput.getText().toString()));startActivity(intent);}});btnCancel.setOnClickListener(new OnClickListener(){

public void onClick(View v){

finish();

}});}} 主界面的xml文件代碼:

xmlns:android=“http://schemas.android.com/apk/res/android” android:orientation=“Horizontal” android:layout_width=“fill_parent” android:layout_height=“fill_parent”>

android:text=“登錄”

android:id=“@+id/btnLogin”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”>

android:text=“鏈接網頁”

android:id=“@+id/btnGoToWeb”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”>

android:text=“"

android:id=”@+id/A1show“ android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

界面一的xml文件代碼:

android:orientation=”Horizontal“ android:layout_width=”fill_parent“ android:layout_height=”fill_parent“

xmlns:android=”http://schemas.android.com/apk/res/android“>

android:layout_width=”wrap_content“ android:layout_height=”wrap_content“>

android:text=”用戶名和密碼:“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

android:text=”“

android:id=”@+id/edtA1Input“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

android:layout_width=”wrap_content“ android:layout_height=”wrap_content“>

android:text=”確定“

android:id=”@+id/btnA1OK“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

android:text=”取消 “

android:id=”@+id/btnA1Cancel“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

界面二的xml文件代碼:

xmlns:android=”http://schemas.android.com/apk/res/android“>

android:text=”“

android:id=”@+id/edtA2Input“

android:layout_width=”match_parent“

android:layout_height=”wrap_content“>

android:text=”確定“

android:id=”@+id/btnA2OK“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“>

android:text=”取消“

android:id=”@+id/btnA2Cancel“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content">

程序運行結果:

程序包:

主界面:

點擊登錄按鈕后:

點擊確定按鈕后:

點擊鏈接網頁按鈕后:

點擊確定按鈕后:

實驗心得體會:

通過本次實驗深入了解了Intent實現進程間的通信過程。熟悉了利用Intent將其他Activity的信息返回到Activity中的方法,可以更熟練的使用安卓編程軟件。

第四篇:Android UI開發專題(三) 各種Drawable

本次我們主要講解Android平臺下的各種Drawable,這里在SDK的android.graphics.drawable包下面可以看到有各種Drawable類多達十幾種,它們到底之間有什么關系和區別呢?

一、AnimationDrawable

顧名思義該類主要表示動畫的圖形類,可以實現逐幀播放的效果,下面代碼示例如下

1.定義一個cwj_animation.xml 放到res/drawable 目錄下,其中定義的屬性duration為延時,單位為毫秒,而oneshot屬性表示是否僅播放一次,內容為:!--

Code highlighting produced by Actipro CodeHighlighter(freeware)http:///

-->1

2.在java中調用也很簡單

ImageView img =(ImageView)findViewById(R.id.cwj_image);//首先聲明一個ImageView對象在xml布局文件中

img.setBackgroundResource(R.drawable.cwj_animation);//我們剛才的animation定義的xml文件

AnimationDrawable frameAnimation =(AnimationDrawable)

img.getBackground();//構造AnimationDrawable對象

frameAnimation.start()//開始播放動畫

3.AnimationDrawable類還提供了一些常用的方法如下:

void stop()停止

void addFrame(Drawable frame, int duration)添加一幀,類似xml中的布局

Drawable getFrame(int index)返回某幀的Drawable圖形

int getNumberOfFrames()返回總共動畫幀數

boolean isOneShot()是否僅播放一次

boolean isRunning()是否正在播放

二、BitmapDrawable

在Android平臺中對于縮放、變形的Bitmap對象由BitmapDrawable類表示,其構造方法也很簡單,由于該類繼承于 android.graphics.drawable.Drawable,相對Drawable而言提供了更多的有關位圖的操作方法,主要的構造方法如 下:BitmapDrawable()//直接構造一個空的對象,這樣方式不推薦使用,SDK標記為deprecated.未來可能無法使用。

BitmapDrawable(Resources res)//從資源中構造

BitmapDrawable(Bitmap bitmap)//從Bitmap對象直接構造,但也是不推薦,而是希望用下一種

BitmapDrawable(Resources res, Bitmap bitmap)//從bitmap中創建設置初始的分辨率從res中

BitmapDrawable(String filepath)//從具體文件路徑構造,也不推薦使用,而是下一種更好

BitmapDrawable(Resources res, String filepath)//同上

BitmapDrawable(InputStream is)//從輸入流中構造,同樣推薦下面的方法

BitmapDrawable(Resources res, InputStream is)//同上

在BitmapDrawable類中相對于Drawable類主要新增了以下幾種方法,均比較實用:

final Bitmap getBitmap()獲取一個Bitmap對象

int getOpacity()//獲取透明度

void setAntiAlias(boolean aa)//是否抗鋸齒

void setTargetDensity(Canvas canvas)//設置目標Canvas密度void setTargetDensity(DisplayMetrics metrics)

三、ClipDrawable

ColorDrawable

Drawable

GradientDrawable

InsetDrawable

LayerDrawable

LevelListDrawable

NinePatchDrawable

PaintDrawable

PictureDrawable

RotateDrawable

ScaleDrawable

ShapeDrawable

StateListDrawable

TransitionDrawable

以上的類型在常見的開發一般較少出現,主要是基類構造使用,Android內部的多個Widget基礎控件使用了,感興趣的網友可以查看開源GIT中的相關內容。

第五篇:Android實驗格式簡易計算器實驗報告

實驗報告

2013-2014 學年第2學期

課程名稱:嵌入式操作系統

實驗題目:簡易計算器的設計與實現

專業:計算機科學與技術、信息處理(是什么專業,寫什么專業)班級:計算本1101(按自己班級填寫)

日期填寫 2014年4月 8日

實驗題目:簡易計算器的設計與實現

實驗類型:上機實驗

一、實驗目的及要求

1.掌握線性布局的應用;

2.掌握表格布局的應用;

3.掌握數組的應用;

4.掌握如何Button組件的使用;

5.掌握代碼中訪問布局組件的方法;

6.掌握特定組件的事件設計方法。

二、實驗儀器設備與軟件環境

1、電腦。

2、Android集成開發工具adt-bundle。

三、實驗過程

1、布局設計

…這部分自己填

2.程序設計

…這部分自己填

下載Android實驗報告—UI設計(定稿)word格式文檔
下載Android實驗報告—UI設計(定稿).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    Android 3D相冊實驗報告(精選5篇)

    中原工學院計算機學院 軟件平臺開發技術 大作業 專 業: 軟件工程 班 級: 軟件121 作品名稱: 3D相冊 姓 名: 辛俊閃 學 號: 201200834101 指導教師: 劉鳳華 2015年 6 月 15 日 一、......

    《UI設計》課程標準

    《UI設計》學習領域課程標準執筆:甄珍審核:時間: 2013-5-5一、學習領域定位“UI”熱是近幾年來興起的潮流,近幾年國內很多從事手機,軟件,網站,增值服務等企業和公司都設立了這個部......

    UI設計流程

    UI設計流程 階段一:分析 1用戶需求分析 2用戶交互場景分析 3競爭產品分析這兩者可以說是相輔相成的。對于一個較為正規的項目而言,必然有對用戶需求的分析內容。Tanjurd瑭錦資......

    UI設計流程

    UI設計流程 分析、設計、配合、驗證 確認目標用戶 在軟件設計過程中,需求設計角色會確定軟件的目標用戶,獲取最終用戶和直接用戶的需求。 用戶交互要考慮到目標用戶的不同......

    UI設計基礎知識 免費范文合集

    UI設計基礎知識 UI設計學習者經常會陷入迷茫期,學習內容零碎雜亂、自覺性差、水平不夠、無人指導走彎路等問題接踵而來,導致很多人半途而廢。要想從零基礎小白成長為真正的UI......

    UI設計合同樣本

    北京XXX有限公司技術服務暨委托UI設計合同本合同由以下當事人訂立,并于年月日簽訂:甲方:上海XXX有限公司乙方:北京XXX有限公司依據《中華人民共和國合同法》的規定,合同雙方就甲......

    UI設計思路

    演講稿 工作總結 調研報告 講話稿 事跡材料 心得體會 策劃方案 UI設計思路 UI測試用例設計方向[轉] 設計功能和界面測試用例1.1 文本框、按鈕等控件測試1.1.1 文本框的測......

    UI設計年終工作總結

    工作總結 時光飛逝轉眼間2013年即將離我們而去,新的2014年已近接踵而來,光陰似箭,歲月匆匆,時間伴隨著我們的腳步急馳而去,穆然回首,才發現過去的一年并不能畫上圓滿的句號,內心不......

主站蜘蛛池模板: 欧美精品偷自拍另类在线观看| 蜜臀av色欲a片无码精品一区| 久久久噜噜噜久久熟女色| 欲色天天网综合久久| 激情国产一区二区三区四区小说| 中文无码伦av中文字幕在线| 无码人妻久久一区二区三区不卡| 玩弄丰满少妇人妻视频| 午夜内射高潮视频| 国产 日韩 另类 视频一区| 亚洲精品一区二区三区的| 婷婷五月深深久久精品| 又爽又色禁片1000视频免费看| 99久久久无码国产精品6| 少妇下蹲露大唇无遮挡| 精品视频一区二区三区在线观看| 久久精品成人免费观看三| 日本不卡在线视频二区三区| 亚欧乱色国产精品免费九库| 久久久国产乱子伦精品| 少妇饥渴偷公乱av在线观看涩爱| 人人妻人人澡人人爽人人精品av| 在线 | 一区二区三区四区| 久久亚洲精品高潮综合色a片| 精品黑人一区二区三区| 久久久久久久女国产乱让韩| 亚洲午夜久久久久妓女影院| 美女裸体十八禁免费网站| 99久久99久久精品国产片果冻| 国模精品一区二区三区| 欧美最猛性xxxxx免费| 欧美另类videossexo高潮| av无码人妻无码男人的天堂| 老汉老妇姓交视频| 天堂8在线天堂资源bt| 亚洲国产精品一区二区九九| 亚洲国产午夜精华无码福利| 正在播放国产乱子伦最新视频| 久久亚洲精品日韩高清| 日本大香伊蕉一区二区| …日韩人妻无码精品一专区|