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

iOS學(xué)習(xí)筆記總結(jié)整理

移動(dòng)開發(fā) iOS
不積跬步無以成千里,學(xué)習(xí)在于點(diǎn)點(diǎn)滴滴的積累,下面為大家整合了一些iOS學(xué)習(xí)筆記總結(jié)整理,希望為各位還在努力學(xué)習(xí)的師弟師妹謀一些福利。

學(xué)習(xí)IOS開發(fā)這對(duì)于一個(gè)初學(xué)者來說,是一件非常撓頭的事情。其實(shí)學(xué)習(xí)IOS開發(fā)無外乎平時(shí)的積累與總結(jié)。下面為大家整理了一部分的iOS學(xué)習(xí)筆記總結(jié)整理,希望對(duì)大家有所幫助。

一.內(nèi)存管理情況

  1. NSString *homePath = NSHomeDirectory(); 
  2. NSString *docPath = [homePath stringByAppendingFormat:@"/Documents"]; 
五.UIActionSheet 按鈕列表
六.旋轉(zhuǎn)
    1- interfaceOrientation屬性查詢當(dāng)前的界面方向。
    2- rotatingHeaderView方法來查詢當(dāng)前導(dǎo)航視圖。
    3- rotatingFooterView來查詢當(dāng)前的標(biāo)簽條。
七.快速撥打電話接口
openURL能幫助你運(yùn)行Maps,SMS,Browser,Phone甚至其他的應(yīng)用程序。這是Iphone開發(fā)中我經(jīng)常需要用到的一段代碼,它僅僅只有一行而已。
  1. [UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8004664411"]; 
這個(gè)程序通過基礎(chǔ)的協(xié)議支持撥打電話的功能。
摘自:http://blog.csdn.net/smilelance/article/details/6213125
八.區(qū)分設(shè)備類型的方法
打電話功能只有iPhone支持,對(duì)于其他設(shè)備對(duì)應(yīng)按鈕應(yīng)該禁用。
1. 用[UIDevice currentDevice].model,這個(gè)返回的是一個(gè)NSString,你可以做如下判斷就能知道設(shè)備是iPad還是iPhone.
  1. if ([UIDevice currentDevice].model rangeOfString:@"iPad"].location != NSNotFound) { 
  2.     NSLog(@"This is an iPad!"); 
2. 用UI_USER_INTERFACE_IDIOM()方法,這是系統(tǒng)定義的一條宏。使用方法也很簡單。
  1. if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
  2.     NSLog(@"This is an iPad!"); 
摘自:http://blog.sina.com.cn/s/blog_3f88614f0100sdcm.html

九.并發(fā)編程
    1-GCD-Grand Central Dispatch,GCD使用隊(duì)列來管理多個(gè)任務(wù),而每個(gè)任務(wù)是以塊(其定義類似于函數(shù))來描述的。GCD從隊(duì)列中讀取這些要完成的任務(wù),然后其多核執(zhí)行 引擎負(fù)責(zé)將這些任務(wù)分配給它所管理的線程。和手動(dòng)線程管理相比,GCD能極大地優(yōu)化線程管理,并極大地減少創(chuàng)建和銷毀線程所帶來的額外開銷。除了在多核系 統(tǒng)上得性能改進(jìn)之外,GCD還能幫助提高應(yīng)用的響應(yīng)速度,并讓代碼更為干凈,易于維護(hù)。
    2-NSOperationQueue-操作隊(duì)列,可以極大地減少開發(fā)者在并發(fā)編程中的負(fù)擔(dān),并且操作隊(duì)列有一套Objective-C的API,使用起來方便。
    基本操作單位-NSOperation,操作。
    操作是封裝了一個(gè)與任務(wù)有關(guān)的代碼與數(shù)據(jù)的抽象類,需要繼承NSOperation,并且描述相關(guān)的任務(wù)。操作對(duì)象是一次性的,它只能執(zhí)行一次,下一次,需要?jiǎng)?chuàng)建一個(gè)新的實(shí)例。
    可以通過addDependency:方法為操作添加相互依賴性。假設(shè)操作A依賴于操作B,如果操作B沒有結(jié)束,操作A就不會(huì)開始執(zhí)行。完成是指 執(zhí)行完,或者取消了操作。有時(shí)需要對(duì)操作是否成功作出判斷。通過removeDependency:方法來移除操作的相互依賴性。
    操作的一個(gè)屬性是isConcurrent。當(dāng)使用操作隊(duì)列來管理這些操作時(shí),isConcurrent應(yīng)當(dāng)設(shè)置為NO,這時(shí)應(yīng)當(dāng)重載 NSOperation的main函數(shù)(在類中保存controller對(duì)象-weak,并在main中調(diào)用controller的方法)。 isReady屬性用于描述操作是否已經(jīng)可以開始執(zhí)行,isExecuting屬性表示操作是否正在執(zhí)行當(dāng)中,isFinished屬性表示操作是否順利 完成,isCancelled屬性則表示操作已經(jīng)取消。
    可以在操作運(yùn)行中取消它的運(yùn)行,只需要給它發(fā)送cancel消息即可。在繼承NSOperation類時(shí),也需要支持cancel方法。
    如果只需要簡單的操作,不想繼承NSOperation類,可以使用NSInvocationOperation類,這個(gè)類中的-initWithTarget:selector:object:方法能幫助你方便地選擇人物的對(duì)象和相應(yīng)的功能。
    操作的執(zhí)行順序取決于各自的優(yōu)先級(jí)和相互之間的依賴性。
    操作隊(duì)列有兩種方式來執(zhí)行其中的操作。第一種是開辟新線程來運(yùn)行這些操作,第二種則是通過GCD來運(yùn)行這些操作。但是無論如何,都不需要手動(dòng)管理 線程。盡量使用操作隊(duì)列,只有在操作隊(duì)列的效率明顯不足時(shí)才轉(zhuǎn)向GCD。因?yàn)椴僮麝?duì)列是封裝在GCD的基礎(chǔ)之上的,雖然增加了一些額外開銷,但是也具有更 加完善的功能。例子是TestNSOperation。
                           下頁內(nèi)容更加精彩實(shí)用
#p#
十.忙碌指示器
    UIActivityIndicator。
  1. UIActivityIndicatorView *activityIndicatior = [UIActivityIndicatorView alloc] initWithActivityIndicatorStyle: UIActivityIndicatorViewStyleWhiteLarge]; 
  2.     activityIndicator.center = CGPointMake(512, 384); 
  3.     [self.view addSubview: activityIndicator]; 
  4.     [activityIndicator startAnimating];  
  5.     [activityIndicator stopAnimating]; 
  6.     [activityIndicator removeFromSuperView]; 
十一.媒體播放

1- 音頻
    [1] 音樂往往是存儲(chǔ)在iPod曲庫(注意位置)中的,可以通過媒體選擇器(media picker)或者媒體查詢(media query)讀取,然后用音樂播放器MPMusicPlayerController播放。
  1. MPMusicPlayerController *musicPlayer = [MPMusicPlayerController applicationMusicPlayer]; 
  2. [musicPlayer setShufleMode: MPMusicShuffleModeSongs]; 
  3. [musicPlayer setRepeatMode: MPMusicRepeatModeAll]; 
  4. [musicPlayer setQueueWithQuery: [MPMediaQuery songsQuery]; 
  5. [musicPlayer play]; 
    applicationMusicPlayer返回的播放器,在你的應(yīng)用中播放音樂。它不會(huì)影響到iPod播放器,也不能從iPod播放器重獲取信息。
    iPodMusicPlayer返回的是iPod播放器,在你推出應(yīng)用后,所有的設(shè)置都會(huì)影響到之后設(shè)備上的iPod播放器。
    獲得音樂播放器后,需要為它設(shè)置一個(gè)播放隊(duì)列。可以用setQueueWithQuery:放方法,通過媒體查詢MPMediaQuery來設(shè)置 播放隊(duì)列,也可以用setQueueWithItemCollection:方法,通過MPMdiaItemCollection來設(shè)置播放隊(duì)列。
    重復(fù)模式repeatMode可以設(shè)置為不重復(fù)、重復(fù)當(dāng)前曲目、或整個(gè)播放列表;亂序播放shuffleMode可以設(shè)置為不亂序、亂序播放曲目或亂序播放專輯;音量volume的設(shè)置與音頻播放器一樣。
    skipToNextItem跳到下一首,skipToPreviousItem跳到上一首,skipToBegin跳到第一首。
    對(duì)應(yīng)的宏都是以MPMusic開頭。
    [2] 利用系統(tǒng)聲音服務(wù)來播放短暫音效(時(shí)長30秒以內(nèi)),并震動(dòng):   
  1. AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);  
    播放指定音效:
  1. NSURL *fileURL = [NSURL fileURLWithPath: path isDirectory: NO];  
  2. // 創(chuàng)建音效ID 
  3. SystemSoundID soundID; 
  4. AudioServiceCreateSystemSoundID((CFURLRef) fileURL, &soundID); 
  5. // 播放聲音 
  6. AudioServicesPlaySystemSound(soundID); 
    [3] 音頻播放器
    沒有時(shí)長限制
  1. NSURL *fileURL = [NSURL fileURLWithPath: path isDirectory: NO]; 
  2. // 用URL來初始化音頻播放器-播放的不是iPod曲庫中的音樂 
  3. AVAudioPlayer* player = [AVAudioPlayer alloc] initWithContentsOfURL: fileURL error: NO]; 
  4. // 準(zhǔn)備播放 
  5. [player prepareToPlay]; 
  6. // 設(shè)置代理 
  7. [player setDelegate: self]; 
    方法:play、pause、stop。可以通過playing屬性查詢播放器是否正在播放當(dāng)中,可以通過volume屬性來修改和查詢播放器的播放增益(從0.0到1.0),可通過setting屬性查詢播放器其他設(shè)置。

    duration表示音頻的時(shí)間長度, currentTime表示當(dāng)前播放到的時(shí)間。播放結(jié)束后可以通過代理方法audioPlayerDidFinishPlaying:來處理播放后設(shè)置。
2- 視頻
    視頻播放可以采用網(wǎng)頁視圖(UIWebView)進(jìn)行嵌入式播放(能播放YouTube視頻),或者采用電影播放器(MPMoviePlayerController)進(jìn)行播放。
    [1] 電影播放器
  1. MPMoviePlayerController *player = [MPMoviePlayerController alloc]initWithContentURL: url]; 
  2.     // 設(shè)置播放器的大小,并將其加入視圖中 
  3.     [player.view setFrame: rectFrame]; 
  4.     [self.view addSubView: player.view]; 
  5.     播放器的背景視圖backgroundView。 
  6.     全屏[player setFullscreen: YES animated: YES]; 
  7.     播放另一個(gè)影片[player setContentURL: newURL]; 
  8.     [player requestThumbnailImagesAtTimes:arrayTimes timeOption:MPMovieTimeOptionNearestKeyFrame]; // 表示播放器不會(huì)在你所指定的時(shí)間去截取預(yù)覽,而是在絕對(duì)時(shí)間的附近幾幀中尋找效果最好的幀做為預(yù)覽。 

scalingMode規(guī)定了影片的縮放模式。   

initialPlaybackTime用來控制視頻開始播放的時(shí)間,單位是秒。

如果視頻源在網(wǎng)絡(luò)上,那么需要正確設(shè)置服務(wù)器端的mimeType。
十二.運(yùn)行環(huán)-runloop
    運(yùn)行環(huán)作用于一個(gè)iOS應(yīng)用的整個(gè)生命周期。它負(fù)責(zé)監(jiān)視各種輸入事件,并且在合適的時(shí)候?qū)@些輸入進(jìn)行分配。應(yīng)用的每一個(gè)線程都有且僅有一個(gè)運(yùn)行環(huán)。你自己不需要?jiǎng)?chuàng)建也不需要銷毀運(yùn)行環(huán),但是可以通過currentRunLoop方法來獲取當(dāng)前的運(yùn)行環(huán)。

十三.定時(shí)器
    由于運(yùn)行環(huán)機(jī)制,定時(shí)器的精度不高,只能用于一般性延時(shí)。
    例子:拼圖游戲,DeskViewController.m。
    NSObject類的定時(shí)方法。
    performSelector: withObject: afterDelay: 運(yùn)行方法,參數(shù),時(shí)間(秒)。
    performSelectorOnMainThread: withObject: waitUntilDone: 在主線程中,運(yùn)行參數(shù)selector所指定的方法,如果waitUntilDone參數(shù)為YES,那么當(dāng)前線程會(huì)被阻攔,直到selector運(yùn)行完。
    performSelector: onThread: withObject: waitUntilDone:同上,但不一定在主線程中運(yùn)行。
    performSelectorInBackground: withObject: 開啟一個(gè)新線程,用于運(yùn)行selector方法,selector方法應(yīng)負(fù)責(zé)線程的初始化。
    cancelPreviousPerformRequestsWithTarget:取消與一個(gè)目標(biāo)相關(guān)的所有計(jì)劃好的動(dòng)作。
    cancelPreviousPerformRequestsWithTraget: selector: object只取消特定的計(jì)劃動(dòng)作。
十四.隨機(jī)數(shù)
0~1之間隨機(jī)數(shù)
  1. CG_INLINE float genRandomNum() 
  2.     return (float)arc4random/ARCRANDOM_MAX; 
十五.加速度傳感器
    獲得加速度傳感器讀數(shù):
  1. UIAccelerometer *accelerometer = [UIAccelerometer shareAccelerometer]; // 單例 
  2. accelerometer.delegate = self; 
  3. accelerometer.updateInterval = 1.0f / 10.0f; // 傳感器更新頻率,普通游戲10~30HZ,虛擬現(xiàn)實(shí)類游戲,30~60HZ 
  4. accelerometer.x, accelerometer.y, accelerometer.z // 傳感器讀數(shù) 
    若不想再接受傳感器讀數(shù),可將代理設(shè)置為nil
  1. [UIAccelerometer shareAccelerometer].delegate = nil;  
  2.  
  3. #define alpha 0.05 
  4. // 獲得重力引起的加速度讀數(shù): 
  5. - (void)accelerometer: (UIAccelerometer *)accelerometer didAccelerate: (UIAcceleration *)acceleration 
  6.     // 簡單低通濾波器 
  7.     accelX = (acceleration.x * alpha) + (accelX) * (1.0 - alpha); 
  8.     accelY = (acceleration.y * alpha) + (accelY) * (1.0 - alpha); 
  9.     accelZ = (acceleration.z * alpha) + (accelZ) * (1.0 - alpha); 
  10.      
  11. // 獲得動(dòng)作引起的加速度讀數(shù): 
  12. - (void)accelerometer: (UIAccelerometer *)accelerometer didAccelerate: (UIAcceleration *)acceleration 
  13.     // 減去低通濾波輸出,得到高通濾波輸出 
  14.     accelX = acceleration.x - ((acceleration.x * alpha) + (accelX) * (1.0 - alpha)); 
  15.     accelY = acceleration.y - ((acceleration.y * alpha) + (accelY) * (1.0 - alpha)); 
  16.     accelZ = acceleration.z - ((acceleration.z * alpha) + (accelZ) * (1.0 - alpha)); 
十六.地圖與連接服務(wù)器
[1] 添加框架MapKit.framework。使用MKMapView來呈現(xiàn)地圖。注意應(yīng)當(dāng)直接使用此類,而不是繼承之。如果希望在MKMapView類之上添加功能,可以使用MKMapViewDelegate協(xié)議。
    初始化:
  1. MKMapView *mapView = [MKMapView alloc] initWithFrame: rect]; 
    初始化之后并不直接顯示,還需要指定顯示的地圖區(qū)域:
  1. CLLocationCoordinate2D coordinate; 
  2. coordinate.latitude = latitudeValue; // 緯度 
  3. coordinate.longtitude = longtitudeValue; // 精度 
  4. mapView.region = MKCoordinateRegionMakeWithDistance(coordinate, width, height); // 指定顯示區(qū)域,width和height單位都是米 
    之后可以通過addSubview添加地圖。
    屬性:showsUserLocation-為YES,系統(tǒng)會(huì)持續(xù)跟蹤用戶的位置
          userLocationVisible-為YES,將顯示用戶所在位置
    顯示地圖之后,常常希望在地圖上添加標(biāo)注,這需要?jiǎng)?chuàng)建一個(gè)類,并實(shí)現(xiàn)MKAnnotation協(xié)議,這個(gè)類叫做標(biāo)注對(duì)象。標(biāo)注對(duì)象往往實(shí)現(xiàn) setCoordinate:方法來設(shè)置其坐標(biāo)。在地圖視圖上,可以設(shè)置標(biāo)注對(duì)象的坐標(biāo),然后添加進(jìn)去,這樣地圖上就會(huì)出現(xiàn)一個(gè)標(biāo)注。代理方法title 和subtitle能夠在標(biāo)注上顯示標(biāo)題和副標(biāo)題。  
  1. // 初始化 
  2.    mapView = [MKMapView alloc] initWithFrame: CGRectMake(100, 100, 550, 700)]; 
  3.    mapView.showsUserLocation = TRUE; 
  4.    mapView.mapType = MKMapTypeStandard; 
  5.    mapView.delegate = self; 
  6.    // 設(shè)置坐標(biāo) 
  7.    CLLocationCoordinate2D coordinate; 
  8.    coordinate.latitude = 37.31; 
  9.    coordinate.longtitude = -122.03; 
  10.    mapView.region = MKCoordinateRegionMakeWithDistance(coordinate, 4000, 6000); // 4000米寬,6000米高的區(qū)域 
  11.    [self.view insertSubview: mapView atIndex: 0]; 
十七.通過storyboard來初始化一個(gè)controller
  1. CBigDesignImageViewController *imageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"BigImageController"];  
   BigImageController是要在storyboard中設(shè)置的Identifier屬性。

十八.給UIView子類設(shè)置陰影,包括各種控件
    1 導(dǎo)入QuartzCore framework
    2 #import <QuartzCore/QuartzCore.h>
    3 編碼:
  1. [imgView layer] setShadowOffset:CGSizeMake(5, 5)]; // 陰影的范圍  
  2. [imgView layer] setShadowRadius:2]; // 陰影擴(kuò)散的范圍控制  
  3. [imgView layer] setShadowOpacity:1]; // 陰影透明度  
  4. [imgView layer] setShadowColor:[UIColor brownColor].CGColor]; // 陰影的顏色 
十九.設(shè)置UIScrollView滾動(dòng)速度      
  1. // 自動(dòng)滾動(dòng)太快,效果不好,這里把動(dòng)畫設(shè)置慢點(diǎn),注意下面要直接賦值contentOffset,不要用帶animated參數(shù)的函數(shù),否則動(dòng)畫會(huì)出問題,因?yàn)閮商幎际莿?dòng)畫效果。 
  2.         [UIScrollView animateWithDuration:1.0f  
  3.                                delay:0  
  4.                                options:UIViewAnimationCurveLinear 
  5.                                animations:^{ 
  6.                                    scrollView.contentOffset = CGPointMake(0, 0);  
  7.                                } 
  8.                                completion:^(BOOL finished){} 
  9.                                ];  
  10.         // 如果在減速滾動(dòng)過程中,按了刷新按鈕,執(zhí)行上面的動(dòng)畫,會(huì)出現(xiàn)重置的位置,y不是0的情況,這里再調(diào)用一次,滾動(dòng)到0。 
  11.         [scrollView setContentOffset:CGPointMake(0, 0) animated:YES];  
二十.EXC_BAD_ACCESS
Here’s the advice I generally give to developers when you hit an EXC_BAD_ACCESS error:
-Set the NSZombieEnabled argument in your executable options, which sometimes helps narrow down the cause
-Run with Apple Instruments such as Leaks to look for memory issues
-Set a breakpoint in your code and step through until you narrow down where it’s crashing
Tried and true “comment out code till it works” then backtrack from there :]

Xcode4 下設(shè)置 NSZombieEnabled 的方法: 
你可以點(diǎn)擊 Xcode4 菜單 Product -> Edit Scheme -> Arguments, 然后將點(diǎn)擊”加號(hào)”, 將 NSZombieEnabled 參數(shù)加到 Environment Variables 窗口中, 后面的數(shù)值寫上 ”YES”.
或者在 Xcode4 菜單 Product -> Edit Scheme -> Diagnostics 設(shè)置窗口中直接勾上 Enable Zombie Objects 即可,Xcode 可用 cmd+shift+< 進(jìn)到這個(gè)窗口。 
Xcode4 已經(jīng)考慮到了現(xiàn)在的要求,所以提供了更便捷的設(shè)置的方式,你也可以在這個(gè)窗口中設(shè)置其他一些參數(shù),你肯定能由此獲得更多的幫助信息。
 
好了,看完這篇iOS學(xué)習(xí)筆記整理,不知道對(duì)你是不是有所啟發(fā)。
責(zé)任編輯:閆佳明 來源: csdn
相關(guān)推薦

2009-06-17 14:21:39

core java

2009-08-13 18:21:52

C#學(xué)習(xí)筆記

2010-06-13 13:44:07

UML學(xué)習(xí)筆記

2010-06-30 18:09:22

UML建模

2010-01-14 17:02:10

學(xué)習(xí)C++

2012-05-14 16:59:40

iOS

2015-01-12 12:12:00

iOS學(xué)習(xí)資料整理

2015-01-12 09:40:41

iOS學(xué)習(xí)資料整理

2010-06-17 16:42:04

UML

2010-06-02 09:06:26

SVN學(xué)習(xí)

2009-12-17 16:15:00

CCNP學(xué)習(xí)筆記

2009-07-14 17:01:24

JDBC基礎(chǔ)

2010-07-09 14:05:56

UML建模

2009-09-08 16:11:20

CCNA(640-80

2010-01-26 17:53:05

C++入門學(xué)習(xí)

2011-07-08 18:28:43

iOS 接口

2012-10-09 10:26:52

Linux目錄權(quán)限

2010-02-05 14:48:04

Android手機(jī)操作

2011-08-22 15:43:08

IOS開發(fā)數(shù)據(jù)庫

2012-05-14 17:06:46

iOS
點(diǎn)贊
收藏

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

欧美猛男超大videosgay| 99久久99久久精品国产片果冻| 正在播放欧美视频| 毛片毛片毛片毛片毛| 密臀av在线播放| 国产精品国产三级国产三级人妇 | 激情欧美一区二区三区在线观看| 欧美多人爱爱视频网站| 国产精品亚洲无码| 久久一级大片| 欧美亚洲国产一卡| 91精品一区二区三区四区| 手机福利小视频在线播放| 久久精品免费观看| 4p变态网欧美系列| 在线免费日韩av| re久久精品视频| 亚洲成人av在线播放| 天堂av8在线| 中文字幕高清在线播放| 一区二区三区精密机械公司| 日韩av影视| 天堂av资源在线| 国产综合成人久久大片91| 日本一区二区三区在线播放| 久久久久成人精品无码| 国产精品毛片一区二区在线看| 日韩电影免费观看中文字幕 | 成人网在线免费视频| 国产欧美日韩高清| 免费黄色一级大片| 欧美专区一区二区三区| 午夜精品在线视频| 麻豆亚洲av熟女国产一区二| 国产精品久久观看| 在线观看视频亚洲| 久久亚洲无码视频| 欧美人与物videos另类xxxxx| 亚洲高清av在线| 无码人妻一区二区三区精品视频 | 91精品福利视频| 免费看一级大黄情大片| av成人福利| 亚洲自拍欧美精品| 日本中文字幕一级片| 18加网站在线| 亚洲精品国产无天堂网2021| 三级网在线观看| 免费人成在线观看播放视频| 亚洲国产精品成人久久综合一区 | 一区二区三区四区日韩| 日韩在线视频播放| 在线观看黄网址| **女人18毛片一区二区| 久久国产精品久久精品| 三级全黄做爰视频| 综合久久一区| 欧美精品久久一区二区| 国产一级视频在线| 亚洲视频一区| 91wwwcom在线观看| 久久亚洲精品石原莉奈| 日本午夜精品一区二区三区电影| 国产成人精品久久亚洲高清不卡| 波多野结衣家庭主妇| 免费在线观看不卡| 91免费福利视频| 精品人妻一区二区三区三区四区 | 欧美三级黄网| 一区二区三区资源| 黄网站欧美内射| 在线天堂中文资源最新版| 色噜噜狠狠一区二区三区果冻| 美女喷白浆视频| 四虎国产精品永久在线国在线| 这里只有精品99re| 91精品又粗又猛又爽| 日本午夜精品久久久| 国产亚洲精品日韩| 91麻豆精品久久毛片一级| 中文在线日韩| 欧美亚洲国产日韩2020| 中文字幕第三页| 国产一区二区在线看| 国产青春久久久国产毛片| 免费看男男www网站入口在线| 国产精品三级久久久久三级| 日韩精品一区二区三区电影| 绿色成人影院| 欧美日韩www| 欧美xxxx×黑人性爽| av一区二区在线播放| 欧美成人亚洲成人| 午夜婷婷在线观看| 国产剧情一区在线| 免费在线国产精品| av网址在线| 91久久免费观看| 日韩精品――色哟哟| 影视先锋久久| 欧美精品电影免费在线观看| 中文字幕在线日本| 岛国av在线一区| 亚洲欧美精品在线观看| 日韩理论视频| 欧美一区二区成人| 中文字幕被公侵犯的漂亮人妻| 欧美ab在线视频| 国产成人福利网站| 蜜桃在线一区二区| 中文字幕亚洲电影| 虎白女粉嫩尤物福利视频| 亚洲开心激情| 久久精品精品电影网| 中文字幕视频网| 成人妖精视频yjsp地址| 日韩一本精品| 最近高清中文在线字幕在线观看1| 91麻豆精品国产91| 蜜桃av乱码一区二区三区| 亚洲激情社区| 亚洲自拍小视频| 日本不卡不卡| 国产成人av免费| 亚洲深夜影院| 国产伦精品一区二区三区照片| 日本中文字幕在线观看| 日本精品一级二级| 人妻体内射精一区二区| 在线成人黄色| 高清不卡日本v二区在线| 黄色免费在线看| 欧美日高清视频| 69xxx免费| 三级一区在线视频先锋 | 欧美精品久久久久久久久| 99久久精品国产成人一区二区| 精品国产亚洲一区二区三区在线| 久久97超碰国产精品超碰| 精品欧美日韩| 爱情岛亚洲播放路线| 日韩欧美国产成人一区二区| 四虎影院中文字幕| 激情综合色播五月| 法国空姐在线观看免费| 亚洲狼人综合| 久久久国产精品x99av| 国产一区二区在线播放视频| 国产精品免费视频观看| 国产91色在线观看| 色婷婷综合网| 成人免费看黄网站| 国产成人无吗| 日韩欧美精品在线视频| 国产亚洲精品久久久久久无几年桃 | 中文字幕男人天堂| 中文av一区二区| 亚洲精品久久久中文字幕| 久久影院100000精品| 成人做爽爽免费视频| 1区2区在线观看| 亚洲成人黄色在线观看| 亚洲免费在线视频观看| 国产欧美视频一区二区| 福利片一区二区三区| 久久久久亚洲| 国产精品久久久久久久久久久久午夜片 | 国内毛片久久| 日本免费久久高清视频| av在线免费一区| 欧美精品一卡两卡| 精品99在线观看| 99视频精品全部免费在线| 亚洲自偷自拍熟女另类| 日韩免费看片| 国产高清在线精品一区二区三区| 免费毛片b在线观看| 在线播放国产一区二区三区| 国产伦精品一区二区三区免.费| 亚洲黄色免费电影| 国产制服丝袜在线| 麻豆国产一区二区| 国产精品va在线观看无码| 亚洲桃色综合影院| 成人精品久久久| 欧美a级在线观看| 中文字幕不卡av| 农村少妇久久久久久久| 欧美少妇一区二区| 国产亚洲精品女人久久久久久| 久久久噜噜噜久久中文字幕色伊伊| 久久精品视频在线观看| 色婷婷.com| 欧美黄在线观看| 欧美精品123| 天堂久久av| 国产精品久久久久久av| 超免费在线视频| 日韩中文字幕久久| 亚洲色欧美另类| 欧美日韩成人在线| 久久人妻免费视频| 亚洲欧美色图小说| 2019男人天堂| www.日韩在线| 在线免费黄色小视频| 久久久成人网| 男人插女人视频在线观看| 久久中文视频| 日韩精品福利视频| 日韩人体视频| 91久久偷偷做嫩草影院| 99久久久国产精品免费调教网站| 97色伦亚洲国产| 在线中文免费视频| 日韩在线一区二区三区免费视频| 天堂av在线资源| 欧美www视频| 91在线你懂的| 欧美私人免费视频| 91玉足脚交嫩脚丫在线播放| 国产精品jk白丝蜜臀av小说| 欧美日韩高清一区二区不卡| 国产成人精品一区二三区| 一区二区三区在线播| 国产福利视频网站| 国产精品久久久久婷婷| 国产又大又粗又爽的毛片| 91女人视频在线观看| 黄色免费视频网站| 成人精品视频一区二区三区| 永久看看免费大片| 激情综合色播五月| 91日韩精品视频| 麻豆精品新av中文字幕| 亚洲欧美自偷自拍另类| 久热精品在线| 成人在线激情网| 日日夜夜精品视频天天综合网| 一女被多男玩喷潮视频| 亚洲裸体俱乐部裸体舞表演av| 久久这里只有精品23| 国产综合视频| 国产玉足脚交久久欧美| 欧美aⅴ99久久黑人专区| 粉嫩av一区二区三区天美传媒| 伊人青青综合网| 国产人妻人伦精品| 欧美久久一级| www.夜夜爱| 雨宫琴音一区二区在线| 男女激情无遮挡| 亚洲一区二区免费看| 日韩视频第二页| 日韩和欧美一区二区三区| 嫩草影院国产精品| 精品一区二区三区视频| 亚洲在线观看网站| 懂色av中文字幕一区二区三区| 手机免费看av片| 99久久99久久精品免费观看| 自拍偷拍视频亚洲| 国产亚洲一区二区三区四区| 无码人中文字幕| 亚洲黄色片在线观看| 日韩欧美激情视频| 色噜噜狠狠成人网p站| 91欧美日韩麻豆精品| 日韩欧美国产一区在线观看| 天天操天天干天天| 亚洲性猛交xxxxwww| 免费人成在线观看播放视频| 欧美丰满片xxx777| 欧美a级在线观看| 国产精品视频午夜| 日韩在线精品强乱中文字幕| 久久久久se| 日韩大片在线| 无码人妻精品一区二区蜜桃网站| 亚洲影音一区| 色乱码一区二区三区在线| 国产不卡高清在线观看视频| 97超碰在线免费观看| 国产精品久久一级| 国产精品a成v人在线播放| 日韩激情视频在线观看| 91av在线播放视频| 草草在线视频| 国产欧美日韩精品在线观看| 成人av地址| 性欧美videosex高清少妇| 欧美日韩综合| 色综合手机在线| 国产成人av自拍| 2019男人天堂| 五月天激情综合| 国产又爽又黄免费软件| 日韩精品视频免费| 精品日韩99亚洲| 国产激情91久久精品导航| 国内精品久久99人妻无码| 亚洲欧洲另类国产综合| 青草视频在线观看免费| 56国语精品自产拍在线观看| 色哟哟在线观看| 久热精品视频在线观看一区| 波多野结衣亚洲一二三| 99在线视频免费观看| 欧美电影一区| 97视频在线免费播放| 国产成人8x视频一区二区| 日本视频在线免费| 日韩欧美在线中文字幕| 亚洲精品久久久久久久久久久久久久| 伊人激情综合网| 日本不良网站在线观看| 91久久爱成人| 欧美成人自拍| 成年人网站大全| 91视频观看免费| 国产一级在线免费观看| 欧美精品久久久久久久久老牛影院| 黄色软件在线观看| 午夜欧美大片免费观看| 一区二区三区在线免费看| 中文字幕在线观看一区二区三区| 日韩精品乱码免费| 国产男男chinese网站| 欧美日韩激情网| 人妻少妇一区二区三区| 色综合91久久精品中文字幕| crdy在线观看欧美| 中日韩在线视频| 老司机精品视频在线| 亚洲色图 激情小说| 91国偷自产一区二区三区观看 | av中文字幕在线观看第一页| 亚洲一区二区三区毛片| 国产高清一区二区| 日韩精品视频一二三| 国产精品水嫩水嫩| 中文字幕乱伦视频| 国产亚洲精品久久| 日本黄色一区| 亚洲欧洲一区二区福利| 美女视频黄 久久| 纪美影视在线观看电视版使用方法| 欧美亚洲图片小说| 成av人电影在线观看| 国产欧美日韩视频| 国产精品久久久久蜜臀| 中文国产在线观看| 一区二区久久久久| 男人的天堂a在线| 国产91精品久久久久| 久久超碰99| 我要看一级黄色大片| 国产精品你懂的| 成人av免费看| av日韩电影| 日韩精品av一区二区三区| 日本一不卡视频| 久久国产精品国语对白| 日韩午夜精品电影| 毛片电影在线| 日韩国产精品一区二区三区| 麻豆精品新av中文字幕| 无码人妻精品一区二区三区夜夜嗨| 欧美电影免费提供在线观看| h片在线观看视频免费| 欧美日韩精品久久| 麻豆精品视频在线观看免费| 九九九免费视频| 日韩av在线影院| 成人精品一区二区三区电影| 亚洲成人动漫在线| 9人人澡人人爽人人精品| 亚洲国产精品无码久久久| 久久精品国产电影| 国产精品115| 日韩中文字幕免费在线| 亚洲婷婷国产精品电影人久久| 精品国产99久久久久久宅男i| 精品福利一区二区三区| 黄色亚洲网站| 99久re热视频精品98| bt7086福利一区国产| 成人黄色片在线观看| 欧美精品video| 国产一区二区电影在线观看| 肉色超薄丝袜脚交| 一本色道**综合亚洲精品蜜桃冫| 麻豆tv免费在线观看| 国产综合色一区二区三区| 久久狠狠亚洲综合| 动漫精品一区一码二码三码四码| 亚洲性xxxx| 米奇精品关键词| 天堂av在线8| 日韩欧美福利视频|