日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

iOS学习之路十三(动态调整UITableViewCell的高度)

發布時間:2023/11/27 生活经验 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS学习之路十三(动态调整UITableViewCell的高度) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大概你第一眼看來,動態調整高度是一件不容易的事情,而且打算解決它的第一個想法往往是不正確的。在這篇文章中我將展示如何使圖表單元格的高度能根據里面文本內容來動態改變,同時又不必子類化UITableViewCell。你當然可以通過子類化它來實現,但是這樣做會使得代碼復雜因為設置高度是在圖表本身的實例上而不是對單元格操作。下面你將會看到這其實是一件輕而易舉的事情。對于圖表來說能夠動態調整高度是件很有意義的事情,我首先想到的需要這個功能的是當顯示一列長度會變化的文本列表時,如果文本內容較少,它或許能夠適合正常的單元格label,但是如果文本變長,就不得不重新設置單元格大小以便于顯示全部的文本內容。我總結了重新設置單元格大小的主要步驟如下:

1 創建并添加一個UILabel作為單元格cell的子視圖;
2 在UITableView的委托方法: (CGFloat)tableView:(UITableView*)tableViewheightForRowAtIndexPath: (NSIndexPath *) indexPath中計算高度
3 在UITableView的委托方法: (UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath: (NSIndexPath *) indexPath中計算UILabel的框大小。

下面我要詳細介紹這些步驟,首先看一下程序輸出截圖:

在普通的圖表中,你可以簡單地用下面的方法設置單元格內label的文本內容:

[[cell textLabel] setText:@"Text for the current cell here."];

也許你認為這樣做就可以完全控制UILabel了,但是我發現我的任何要改變UILabel框大小的嘗試都失敗了,因此這并不是實現動態調整大小的一個好的候選方案。

我們需要設計一個UILabel然后把它添加到單元格的內容視圖中。要實現它需要調用-cellForRowAtIndexPath,大致內容如下所示:

?

[html]?view plaincopyprint?
  1. -?(UITableViewCell?*)tableView:(UITableView?*)tv?cellForRowAtIndexPath:(NSIndexPath?*)indexPath??
  2. {??
  3. ??UITableViewCell?*cell;??
  4. ??UILabel?*label?=?nil;??
  5. ???
  6. ??cell?=?[tv?dequeueReusableCellWithIdentifier:@"Cell"];??
  7. ??if?(cell?==?nil)??
  8. ??{??
  9. ????cell?=?[[[UITableViewCell?alloc]?initWithFrame:CGRectZero?reuseIdentifier:@"Cell"]?autorelease];??
  10. ???
  11. ????label?=?[[UILabel?alloc]?initWithFrame:CGRectZero];??
  12. ????[label?setLineBreakMode:UILineBreakModeWordWrap];??
  13. ????[label?setMinimumFontSize:FONT_SIZE];??
  14. ????[label?setNumberOfLines:0];??
  15. ????[label?setFont:[UIFont?systemFontOfSize:FONT_SIZE]];??
  16. ????[label?setTag:1];??
  17. ???
  18. ????[[cell?contentView]?addSubview:label];??
  19. ??}??
  20. }??

?

?

這并不是完整的代碼因為我們僅僅在創建單元格的時候初始化它的label,這段代碼對應調用-dequeueReusableCellWithIdentifier之后的判斷模塊if(cell == nil)。
在這里我想強調兩點:第一個,我們可以注意到label有一個標簽與其對應,因為調用了-setTag:1。當cell不等于nil時這個標簽可以用到。第二點,我們通過調用[[cell contentView] addSubview:label]來將label添加到單元格的內容視圖中,這個只是在label初始化的時候用到。每調用這個函數都會添加label到子視圖序列中。下面我們會將這段代碼補充完整,但之前先讓我們看一下如何設置cell的高度。

計算cell的高度

在一個復雜的cell中,計算高度可能比較困難,但是你只需要關心那些高度會變化的部件就可以了。在我的例子中,唯一需要處理的就是添加到單元格中的label。我們根據文本的大小來計算cell 的高度,而文本的大小取決于文本的長度和文本字體。NSString類提供了函數-sizeWithFont來方便我們獲取cell 的大小。下面的代碼介紹了函數-heightForRowAtIndexPath:

[html]?view plaincopyprint?
  1. -?(CGFloat)tableView:(UITableView?*)tableView?heightForRowAtIndexPath:(NSIndexPath?*)indexPath;??
  2. {??
  3. ??NSString?*text?=?[items?objectAtIndex:[indexPath?row]];??
  4. ???
  5. ??CGSize?constraint?=?CGSizeMake(CELL_CONTENT_WIDTH?-?(CELL_CONTENT_MARGIN?*?2),?20000.0f);??
  6. ???
  7. ??CGSize?size?=?[text?sizeWithFont:[UIFont?systemFontOfSize:FONT_SIZE]?constrainedToSize:constraint?lineBreakMode:UILineBreakModeWordWrap];??
  8. ???
  9. ??CGFloat?height?=?MAX(size.height,?44.0f);??
  10. ???
  11. ??return?height?+?(CELL_CONTENT_MARGIN?*?2);??
  12. }??

?

你會注意到我們用到了幾個常量來計算cell 的大小,它們的定義如下所示:

#define FONT_SIZE 14.0f
#define CELL_CONTENT_WIDTH 320.0f
#define CELL_CONTENT_MARGIN 10.0f

常量CELL_CONTENT_WIDTH是整個cell的寬度。CELL_CONTENT_MARGIN是我們定義的頁邊空白,FONT_SIZE是我們采用文本的字體大小。

首先我們要創建一個內容寬度的約束條件。CGSizeMake的第一個參量是總共的內容寬度減去兩個頁邊空白。因為左邊和右邊各有一個頁邊空白。第二個參數是我們提供的最大數值。這個約束條件在后面的函數-sizeWithFont中將會用到。在-sizeWithFont中我們設置為UILineBreakModeWordWrap來獲取在允許自動換行的情況和上面提到的約束條件下正確的大小。最后我們使用MAX宏設置cell的高度,并且保證cell 的高度不會小于44個像素,因為它返回size.height和44兩個數中的最大值。最后,我們將上下的頁邊空白考慮進去得到最后的結果。

為了使得讀者形象化的了解頁邊空白,下面一個截圖可以看出有一個邊界環繞著label。調用[[label layer] setBorderWidth:2.0f]可以顯示該邊界從而方便我們看到頁邊空白。

計算并設置UILabel框大小

在前面我們用來計算高度的方法也是我們用來設置UILabel框大小的方法。下面將-cellForRowAtIndexPath代碼補充完整:

[html]?view plaincopyprint?
  1. -?(UITableViewCell?*)tableView:(UITableView?*)tv?cellForRowAtIndexPath:(NSIndexPath?*)indexPath??
  2. {??
  3. ??UITableViewCell?*cell;??
  4. ??UILabel?*label?=?nil;??
  5. ???
  6. ??cell?=?[tv?dequeueReusableCellWithIdentifier:@"Cell"];??
  7. ??if?(cell?==?nil)??
  8. ??{??
  9. ????cell?=?[[[UITableViewCell?alloc]?initWithFrame:CGRectZero?reuseIdentifier:@"Cell"]?autorelease];??
  10. ???
  11. ????label?=?[[UILabel?alloc]?initWithFrame:CGRectZero];??
  12. ????[label?setLineBreakMode:UILineBreakModeWordWrap];??
  13. ????[label?setMinimumFontSize:FONT_SIZE];??
  14. ????[label?setNumberOfLines:0];??
  15. ????[label?setFont:[UIFont?systemFontOfSize:FONT_SIZE]];??
  16. ????[label?setTag:1];??
  17. ???
  18. ????[[label?layer]?setBorderWidth:2.0f];??
  19. ???
  20. ????[[cell?contentView]?addSubview:label];??
  21. ???
  22. ??}??
  23. ??NSString?*text?=?[items?objectAtIndex:[indexPath?row]];??
  24. ???
  25. ??CGSize?constraint?=?CGSizeMake(CELL_CONTENT_WIDTH?-?(CELL_CONTENT_MARGIN?*?2),?20000.0f);??
  26. ???
  27. ??CGSize?size?=?[text?sizeWithFont:[UIFont?systemFontOfSize:FONT_SIZE]?constrainedToSize:constraint?lineBreakMode:UILineBreakModeWordWrap];??
  28. ???
  29. ??if?(!label)??
  30. ????label?=?(UILabel*)[cell?viewWithTag:1];??
  31. ???
  32. ??[label?setText:text];??
  33. ??[label?setFrame:CGRectMake(CELL_CONTENT_MARGIN,?CELL_CONTENT_MARGIN,?CELL_CONTENT_WIDTH?-?(CELL_CONTENT_MARGIN?*?2),?MAX(size.height,?44.0f))];??
  34. ???
  35. ??return?cell;??
  36. }??

?

要注意if(cell == nil)模塊是初始化代碼,只在cell創建的時候運行一次。該模塊外部代碼每次都會執行只要在每次數據更新或者窗口拖拽之后調用了-cellForRowAtIndexPath。

也就是說,每次都需要設置label中文本內容以及設置label外框大小。注意如果label處于未初始化狀態,我們需要通過調用[cell viewWithTag:1]來獲取UILabel的句柄。這段代碼跟前面計算高度的代碼基本相同。

總結

動態計算單元格cell的高度真的并不困難。如果你有一個很復雜的cell,你只需要根據內容寬度和特定文本字體的大小來確定cell的高度。如果你不清楚你的外框顯示在什么地方,只需要通過調用[[view layer] setBorderWidth:2.0f]來使外框顯示即可。這會有助于你了解繪圖過程以及更快地在更深的層次理解繪圖顯示的問題。

演示工程文件:DynamicHeights Demo Project

作者:Matt Long
原文鏈接:http://www.cimgf.com/2009/09/23/uitableviewcell-dynamic-height/
原文:
UITableViewCell Dynamic Height
At first glance setting a height dynamically for table view cells seems a little daunting and the first most obvious answers that come to mind are not necessarily correct. In this post I will show you how to set your table view cell heights dynamically based upon the text content without subclassing UITableViewCell. You can subclass it, however, doing so does not make the code much cleaner as setting the height is done in your delegate for the table view itself rather than the cell anyhow. Read on to see what you need to know to make dynamic cell height sizing a breeze. There are probably numerous reasons why you might want dynamic heights for your table view cells, but the one I’ve run into most is the need to resize because I am displaying lists of text objects with varying lengths. When the text is short, it might fit in the normal cell label, however, if the text gets longer, you will want to resize the cell so that you can display the complete content. I’ve distilled the process of resizing table cells to a few rules of thumb. Here they are:

  • Create, configure, and add a UILabel as a subview of the contentView in the cell.
  • Calculate the height in the UITableView delegate method, – (CGFloat)tableView:(UITableView*)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
  • Calculate the frame for the UILabel in the UITableView delegate method, – (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

I am going to cover each of these rules in detail, but take a look at the output of the example project in the screenshot.

In simpler table view based applications, you can simply set the text of the table view cell’s text label like this:

[[cell textLabel] setText:@"Text for the current cell here."];

Doing so might make you think that you can manipulate the UILabel that the cell uses, however, I’ve found my attempts to change the UILabel’s frame get ignored completely, so it is not a good candidate for use with our dynamic resizing code.

Instead what we need to do is programatically create a UILabel and add it to the cell’s content view. Do this in the call to -cellForRowAtIndexPath. Use something like the following code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath
{UITableViewCell *cell;UILabel *label = nil;cell = [tv dequeueReusableCellWithIdentifier:@"Cell"];if (cell == nil){cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:@"Cell"] autorelease];label = [[UILabel alloc] initWithFrame:CGRectZero];[label setLineBreakMode:UILineBreakModeWordWrap];[label setMinimumFontSize:FONT_SIZE];[label setNumberOfLines:0];[label setFont:[UIFont systemFontOfSize:FONT_SIZE]];[label setTag:1];[[cell contentView] addSubview:label];}
}

This is not the completed code as you’ll notice that we have initialized the label only when the cell needs created for the first time, that is if (cell == nil) after a call to -dequeueReusableCellWithIdentifier. There are two points I want to address in relation to this. First, notice the label has a tag associated with it after a call to -setTag:1. This will be used in the case where the cell is not equal to nil after a call to -dequeueReusableCellWithIdentifier. In that case we will need to get a handle to the label by calling [cell viewWithTag:1] which will return the view that we associated with that tag. Second, notice that we have added our label to the cell’s content view with a call to [[cell contentView] addSubview:label]. This is done when the label is initialized and should only be done once. Adding it each time this method is called will add the label again to the subviews array. We will come back to this code to finish it in a minute, but first let’s take a look at how we can set the height for our cell now that our label has been added.

Calculate the Cell Height

In a complex cell, your calculations could get a bit challenging, however, you only need to worry with the items that will change in height. In our example, the only item you need to deal with is the label that we added. We calculate the height of the cell by determining the size of the text based on the length of the text and the font we intend to use. The NSString class provides a method called -sizeWithFont that enables us to obtain this size. The following code show how we implement our call to -heightForRowAtIndexPath:

1
2
3
4
5
6
7
8
9
10
11
12
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{NSString *text = [items objectAtIndex:[indexPath row]];CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];CGFloat height = MAX(size.height, 44.0f);return height + (CELL_CONTENT_MARGIN * 2);
}

You will notice that we have several constants we are using to calculate the size of our cell. These are defined as follows:

#define FONT_SIZE 14.0f
#define CELL_CONTENT_WIDTH 320.0f
#define CELL_CONTENT_MARGIN 10.0f

The constant CELL_CONTENT_WIDTH is the width of the entire cell. CELL_CONTENT_MARGIN is the margin we want to use all the way around the cell as the content inset, and of course FONT_SIZE is the size of the font we want to use for the label text.

The first place we use these is to create a constraint with the content width. Notice that CGSizeMake takes as its first parameter the total content width minus the margin times 2. This subtracts the margin from the left and the margin from the right from the total width to have the actual width of the label. The second parameter is just a maximum number we provide. The call to -sizeWithFont will set this to the actual height in the next line. This call to -sizeWithFont calculates the size according to the constant UILineBreakModeWordWrap which causes it to return the correct size for word wrap–which is why the width is important to get right. Next we set our height for the cell using a call to the MAX macro. This will ensure that our cell height will never be shorter than the default 44 pixels as MAX returns the larger of the two variables. Finally, we add our margin height back into the height for both top and bottom (hence x 2) and then return the result.

To help visualize how the margin is working, take a look at the following screenshot to see what each label looks like with a border around it. Turning this on with a call to [[label layer] setBorderWidth:2.0f] on the UILabel we added in the previous section makes it clear where the margins are.

Calculate the UILabel Frame and Set It

The same calculation we used to determine the height in the previous section is the code we use to set the frame for the UILabel we added in the beginning. To complete this tutorial we will finish out our implementation of -cellForRowAtIndexPath with the following code.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath
{UITableViewCell *cell;UILabel *label = nil;cell = [tv dequeueReusableCellWithIdentifier:@"Cell"];if (cell == nil){cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:@"Cell"] autorelease];label = [[UILabel alloc] initWithFrame:CGRectZero];[label setLineBreakMode:UILineBreakModeWordWrap];[label setMinimumFontSize:FONT_SIZE];[label setNumberOfLines:0];[label setFont:[UIFont systemFontOfSize:FONT_SIZE]];[label setTag:1];[[label layer] setBorderWidth:2.0f];[[cell contentView] addSubview:label];}NSString *text = [items objectAtIndex:[indexPath row]];CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];if (!label)label = (UILabel*)[cell viewWithTag:1];[label setText:text];[label setFrame:CGRectMake(CELL_CONTENT_MARGIN, CELL_CONTENT_MARGIN, CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), MAX(size.height, 44.0f))];return cell;
}

Just remember that anything done within the if (cell == nil) block is initialization code and should only be done when the cell is first created. Anything done outside of the block will be used every time the -cellForRowAtIndexPath is called, which is any time the data gets reloaded or the view gets scrolled.

That being said, you will see that the only thing we do every time it gets called is setting the text of the current item and setting the label’s frame for the current item (lines 32 and 33). Notice that we got a handle to our UILabel by calling [cell viewWithTag:1] (lines 29 and 30) in the case where the label is nil in subsequent/non-initialization calls to this method. You will notice that our frame calculation code is exactly the same as what we used in the previous section to determine the row height.

Conclusion

Calculating dynamic cell heights is really not too hard. If you have a very complex cell, just remember that all you really need to calculate is the height based up a width that shouldn’t change and the size of the text of a certain font (unless of course you support both portrait and landscape modes–which makes things a little more challenging. I will, however, leave this as an exercise for the reader). If you find yourself wondering where your actual frame is displaying for a given view, just turn on the view border by calling [[view layer] setBorderWidth:2.0f]. This will help you see what is going on and give you the ability get to the bottom of your display problems quicker. Until next time.
DynamicHeights Demo Project

Tags: ?
cellForRowAtIndexPathdynamicheightheightForRowAtIndexPathiOStableviewUILabelUITableViewCell

轉載于:https://www.cnblogs.com/lixingle/p/3308067.html

總結

以上是生活随笔為你收集整理的iOS学习之路十三(动态调整UITableViewCell的高度)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲国产免费网站 | 国产99久久| 国产精品麻 | 亚洲国产精品成人va在线观看 | 久久男人免费视频 | 青春草视频在线播放 | 日韩av一区二区三区四区 | 欧美整片sss | 91日韩在线专区 | 亚州精品国产 | 2019中文最近的2019中文在线 | 91精品国自产拍天天拍 | 日韩精品大片 | 国产精品免费视频一区二区 | 中文资源在线播放 | 00av视频 | 欧美精品久久久久久 | 狠狠色狠狠色 | 超碰在线97国产 | 亚洲国产精品va在线看黑人 | 久久精品中文 | 黄色小说18 | 操操操影院 | 国产精品久久久免费 | 成人一级黄色片 | 99热只有精品在线观看 | 国产精品私人影院 | 婷婷五天天在线视频 | 婷婷综合亚洲 | 亚洲精品美女久久久 | 久草在线观看资源 | 久久丝袜视频 | 国产在线免费观看 | 麻豆国产精品va在线观看不卡 | 国产不卡在线看 | 97超碰资源总站 | 国产精品高潮在线观看 | 日韩中文字幕a | 在线观看播放av | 久久精品国产99 | 五月天丁香视频 | 午夜精品电影一区二区在线 | 久草视频免费播放 | 一区二区三区四区精品 | 超碰在线人人草 | 51精品国自产在线 | 欧美一级小视频 | 一区二区三区电影在线播 | 美女视频a美女大全免费下载蜜臀 | 国产成人免费网站 | 成人超碰97 | 五月婷婷六月丁香激情 | 天天天天天干 | 欧美一区免费观看 | 日韩成人免费在线 | 国产一二三在线视频 | 成人va在线观看 | 亚洲精品网站 | 国产一二三四在线观看视频 | 91免费版在线 | 国产精品尤物 | 在线观看中文字幕视频 | 亚洲黄色av网址 | 日韩精品中文字幕av | 国产精品影音先锋 | 丁香六月婷婷激情 | 亚洲国产高清在线观看视频 | 亚洲视频播放 | 天天做天天干 | 五月天婷亚洲天综合网精品偷 | 精品国产成人av在线免 | 国产精品高潮久久av | 激情文学丁香 | 波多野结衣在线视频一区 | 91豆花在线观看 | www.干| 91网站免费观看 | 色婷婷狠狠18 | 天堂素人在线 | 黄色成人av在线 | 九九视频网| 免费观看一级成人毛片 | 91社区国产高清 | 国产69久久精品成人看 | 狠狠色丁香久久婷婷综 | 最近中文字幕免费 | 日本中出在线观看 | 91精品免费在线观看 | 久久激情小视频 | 免费日韩电影 | 亚洲一区二区三区在线看 | 国产成人333kkk | 青青久草在线 | 久久一区91 | 中文永久字幕 | 麻豆传媒在线视频 | 欧美 另类 交 | 午夜视频在线网站 | 国内精品中文字幕 | 成人动漫精品一区二区 | 美女网站黄在线观看 | 国精产品永久999 | 国产精品女视频 | 美女久久久久久久久久久 | 中文字幕精品www乱入免费视频 | 超碰国产97 | 日韩中文在线视频 | 日本中文字幕电影在线免费观看 | 久久伊人免费视频 | 中文字幕在线人 | 成年人在线免费看视频 | 日韩一区二区三区高清免费看看 | 国产一区欧美一区 | 久久人人精 | 黄色三级久久 | 国产一区二区精品 | 综合色亚洲 | 九九在线高清精品视频 | 欧美美女视频在线观看 | 色网站黄 | 久久伊人五月天 | 中文字幕刺激在线 | 人人狠狠综合久久亚洲婷 | 免费亚洲精品视频 | 亚洲国产丝袜在线观看 | 久久精品亚洲 | 欧美日韩三区二区 | av亚洲产国偷v产偷v自拍小说 | 在线免费视 | 在线黄网站 | 一区二区三区在线视频111 | 日本性动态图 | 久久国产手机看片 | 97国产电影| www.69xx | 亚洲在线网址 | 91av视频导航 | 欧美一区免费在线观看 | 91精品久久久久久综合五月天 | 丁香在线视频 | 中文字幕视频免费观看 | 国产一区二区中文字幕 | 毛片www | 日本精品久久久久中文字幕 | 丁香视频五月 | 天天拍夜夜拍 | 五月天亚洲婷婷 | 93久久精品日日躁夜夜躁欧美 | 少妇bbw搡bbbb搡bbbb | 在线免费观看黄网站 | 国内揄拍国内精品 | 国产免费高清视频 | 亚洲精品国产精品乱码不99热 | 国产精品免费在线视频 | 国产精品免费观看久久 | 国产精品久久久久久一区二区 | 久久综合日 | 日韩在线免费不卡 | 人人涩| 国产韩国精品一区二区三区 | 久久国产精品免费一区二区三区 | 欧美色图一区 | 婷婷在线观看视频 | 国产日韩欧美在线影视 | 青青色影院 | 日韩黄视频 | 欧美黑人巨大xxxxx | 国产高清在线一区 | 成年人免费看的视频 | 免费在线观看av | 69av网| 最近中文字幕免费视频 | 国产精品一二三 | 日本三级久久 | 狠狠干在线播放 | 国产精品v欧美精品v日韩 | 偷拍精偷拍精品欧洲亚洲网站 | 97干com| 亚洲理论片在线观看 | 99精品视频观看 | 婷婷色站 | 成人a在线观看高清电影 | 亚洲 欧洲 国产 精品 | 国产亚州av | 91av短视频 | 久久99精品久久久久婷婷 | 欧美大片第1页 | 人成电影网 | 在线看免费 | 欧美精品日韩 | 亚洲国产欧美一区二区三区丁香婷 | 伊人天天操 | 国产精久久久久久妇女av | 亚洲欧洲美洲av | 欧美aa在线 | 成人国产在线 | 国内精品视频免费 | 免费在线观看成人av | 久久精品亚洲精品国产欧美 | 色丁香综合 | 久99久精品 | 天天色宗合 | 狠狠综合网 | 一级c片| 天天插夜夜操 | 狠狠狠狠狠狠狠干 | 人人艹视频 | 97超碰人人澡人人爱 | av成人资源 | 久草视频在线资源站 | 超碰夜夜 | 999色视频 | www.色综合.com| 久久久久久久久久久久久久免费看 | 天天操天天摸天天爽 | 成人国产精品久久久春色 | 日韩精品久久中文字幕 | 免费合欢视频成人app | 国产精品久久久久亚洲影视 | 日日操天天爽 | 婷婷综合 | 欧美日韩不卡一区二区 | 麻豆影视在线观看 | 久久精品在线免费观看 | 欧美日韩91 | 精品国偷自产国产一区 | 五月天.com| 成人免费在线视频 | www亚洲精品 | 一级黄色免费网站 | 亚洲片在线| 超碰av在线| 六月婷婷久香在线视频 | 天天躁天天躁天天躁婷 | 国产精品a久久 | 国内精品久久久精品电影院 | 久久婷婷久久 | 99久久激情| 一级免费黄视频 | 黄网站色成年免费观看 | 999久久久久久久久久久 | 久久亚洲私人国产精品 | 99视频精品免费观看, | 一级精品视频在线观看宜春院 | 日韩高清黄色 | 中文字幕在线看视频国产中文版 | 亚洲精品国偷拍自产在线观看 | 麻豆传媒视频观看 | 亚洲精品视频在线播放 | 中文字幕电影一区 | 日日夜夜天天久久 | 久久超碰免费 | 精品久久久久久综合日本 | 国产在线视频一区二区 | 国产精品99久久99久久久二8 | 成人影片在线免费观看 | 免费福利在线视频 | 色婷丁香 | 国产免费又粗又猛又爽 | 日韩免费观看一区二区 | 夜夜高潮夜夜爽国产伦精品 | 亚洲精品美女免费 | 亚洲女在线 | 在线观看国产日韩 | 日韩视频一区二区三区在线播放免费观看 | 国产精品去看片 | 激情欧美一区二区三区免费看 | 91精品国产综合久久久久久久 | 99色免费视频| 99久久精品免费看国产免费软件 | 国产一级片免费播放 | 精品理论片 | 日韩免费视频在线观看 | 在线看片日韩 | 日韩高清在线一区二区 | 在线 精品 国产 | 欧美激情精品久久久久久免费 | 午夜精品福利在线 | 在线播放第一页 | 欧美色噜噜噜 | 九色最新网址 | 一色屋精品视频在线观看 | 在线观看国产91 | 久久国产精品精品国产色婷婷 | 免费中文字幕 | 少妇bbw搡bbbb搡bbbb | 天天超碰 | 国产精品视频免费看 | 亚洲一级特黄 | 九九热国产视频 | av成人在线网站 | 亚洲激情免费 | 在线观看一区二区精品 | 成人久久18免费网站图片 | 99精品在线免费观看 | 国产精品中文字幕在线观看 | 国产精品视频资源 | 色综合激情网 | 高清av网 | 99精品视频观看 | 少妇精品久久久一区二区免费 | 国产精品欧美一区二区 | 国产精品第一视频 | www.com黄色 | 人人要人人澡人人爽人人dvd | 中文字幕永久 | 久久亚洲免费视频 | 国产精品美女视频网站 | 亚洲无吗天堂 | 欧美电影在线观看 | 天天综合人人 | 特级西西444www大精品视频免费看 | 中文在线| 亚洲最新在线 | 久草精品视频在线观看 | 精品v亚洲v欧美v高清v | 国产精品久久久久一区二区国产 | 天天伊人狠狠 | 久久精品视频99 | 草久久久久久久 | 久草在线视频国产 | 激情网在线观看 | 国产黄色av影视 | 永久免费毛片 | 亚洲精品网页 | 久久久久在线 | 成年免费在线视频 | 午夜一级免费电影 | 亚洲欧美日本国产 | 色.www | 久久福利在线 | 免费人人干 | 91天天操 | 国产成人91| 91精品办公室少妇高潮对白 | 91一区啪爱嗯打偷拍欧美 | av福利超碰网站 | 97在线观看视频国产 | 中文字幕在线视频第一页 | 亚洲人成人99网站 | 天干啦夜天干天干在线线 | 色视频网站在线 | 婷婷六月天丁香 | 探花视频在线观看+在线播放 | 国产精品一区二区久久久久 | 日韩精品五月天 | 亚洲综合在线五月 | 日本aa在线| 免费91在线观看 | 91精品国产麻豆国产自产影视 | 亚洲男人天堂2018 | 日韩com| 国产精品久久麻豆 | 久久这里只有精品9 | 91亚洲在线| 亚洲三级精品 | 久久毛片网站 | 麻豆视频www | 久久精品一区八戒影视 | 91尤物在线播放 | 99re在线视频观看 | 久草在线手机视频 | 91中文字幕永久在线 | 手机在线永久免费观看av片 | 欧美性脚交 | 天天插天天狠 | 午夜精品一区二区三区视频免费看 | 欧美日韩成人 | 天天操导航 | 国产精品18久久久久久不卡孕妇 | 久久久久久久久黄色 | 最近久乱中文字幕 | 99精品视频免费观看 | 日韩欧美综合 | 国内三级在线观看 | 久久久久久久久久久久久国产精品 | 国产超碰97| 亚洲激情小视频 | 91精品人成在线观看 | 国产又粗又猛又爽又黄的视频先 | 福利视频一区二区 | 丰满少妇在线观看 | 91精品在线视频观看 | 97超碰.com | 97操碰| 国产免费久久 | 中文字幕高清av | 日韩欧美在线观看一区二区三区 | 欧美最猛性xxx | 欧美精品乱码久久久久久 | 国产视频一区二区在线观看 | 日本黄色大片儿 | 日韩精品视频在线观看免费 | 在线观看亚洲精品视频 | 久久99国产一区二区三区 | 1区2区3区在线观看 三级动图 | 狠狠干激情| 精品国产一区在线观看 | 丁香婷婷深情五月亚洲 | 在线观看视频黄色 | 日韩免费电影一区二区 | 欧美精品中文字幕亚洲专区 | 亚洲成av人片在线观看无 | 亚洲欧美经典 | 精品国产精品国产偷麻豆 | 亚洲日日夜夜 | 日韩专区在线 | 亚洲精品久久视频 | 在线观看视频三级 | 中文字幕亚洲综合久久五月天色无吗'' | 制服丝袜在线 | 亚洲成人精品久久久 | 三日本三级少妇三级99 | 中文字幕在线观看完整 | 国产亚洲免费的视频看 | 日韩在线电影 | 日韩v欧美v日本v亚洲v国产v | 美女av电影 | 成人在线视频在线观看 | 国产精品欧美久久久久天天影视 | 国产在线精品区 | 韩国av一区二区三区在线观看 | 91在线视频免费播放 | 欧美伦理电影一区二区 | 国产精品久久久久一区二区 | 97香蕉超级碰碰久久免费软件 | 91精品在线视频观看 | 国产一级视频在线观看 | 久久国产成人午夜av影院潦草 | 亚洲在线色 | 国产精品一区二区av日韩在线 | 国产成人99av超碰超爽 | 在线观看va | 欧美一区日韩一区 | 天堂av网址 | 黄色资源在线 | 在线观看av网 | 欧美天天综合网 | 免费看国产a | 久久久资源网 | 久久久久久久亚洲精品 | 国产麻豆精品免费视频 | www.com操| 美女视频又黄又免费 | 免费在线国产黄色 | 午夜精品一区二区国产 | 国产专区精品视频 | 黄色日本片| 日韩一三区 | 国产麻豆果冻传媒在线观看 | 日日干日日操 | 欧美性生活久久 | 美女网站色 | 婷婷激情小说网 | 日韩亚洲国产精品 | 欧美一级久久久久 | 日韩免费视频一区二区 | 亚洲精品成人在线 | 久草av在线播放 | 91在线精品秘密一区二区 | 中文字幕在线观看1 | 色综合咪咪久久网 | 国产在线观看免费 | 国产成人a v电影 | 免费在线a | 国产精品久久久久久久久久白浆 | 97人人模人人爽人人喊网 | av成人在线观看 | 中文字幕在线看视频 | 激情视频免费观看 | 欧亚日韩精品一区二区在线 | 日韩av在线一区二区 | 国产又粗又硬又爽的视频 | 亚洲精品在线资源 | 免费观看www小视频的软件 | 国产美女主播精品一区二区三区 | 久久免费在线观看 | 超碰在线网| 亚州视频在线 | 91人人在线 | 久久久国产一区二区三区 | 黄色成人毛片 | 国产免费又黄又爽 | 国产又粗又猛又色又黄网站 | 一本一本久久a久久精品综合妖精 | 日韩网站在线 | 免费看的黄色录像 | 国产精品一区二区三区四区在线观看 | 国产视频一区在线 | 蜜臀av在线一区二区三区 | 中文字幕之中文字幕 | 久久国产精品99国产精 | 手机色在线 | 91热视频| 狠狠插狠狠操 | 免费在线成人 | 黄www在线观看 | 精品久久久久久久久中文字幕 | 亚洲精品午夜久久久 | 中文字幕永久 | 激情影院在线观看 | 国产精品久久久久久久久婷婷 | 天天曰天天曰 | 91麻豆精品国产91久久久久久 | 亚洲欧洲精品视频 | 午夜国产福利在线 | 玖玖国产精品视频 | 伊人一级 | 婷婷丁香六月天 | 蜜臀av夜夜澡人人爽人人桃色 | av中文天堂在线 | av看片在线观看 | 精品久久一二三区 | 亚洲区视频在线观看 | 蜜臀精品久久久久久蜜臀 | 夜色资源站wwwcom | 天天草夜夜 | 国产精品久久久久久五月尺 | 五月婷婷综合在线视频 | 中文av资源站 | 永久免费精品视频 | 久久久久久草 | 久久日本视频 | 182午夜在线观看 | 免费看一及片 | 日韩免费av片 | 免费观看视频的网站 | 美女福利视频在线 | 夜夜躁日日躁狠狠久久av | 欧美一级免费在线 | 在线观看精品 | 国产视频一区二区三区在线 | 色婷婷狠| 久久精品视频在线免费观看 | 亚洲欧美日韩一二三区 | av电影免费在线看 | 亚洲黄在线观看 | 久久在线精品 | 亚洲成成品网站 | 日韩午夜精品 | 欧美一区日韩一区 | 午夜黄网| 精品视频www | 69xx视频| 久草a在线| 久久精品国产久精国产 | 成人免费在线观看av | 亚洲va欧美va人人爽春色影视 | 免费看v片网站 | 日韩四虎 | 在线精品在线 | 日韩中文字幕在线不卡 | 中文在线亚洲 | 福利片视频区 | 亚洲欧美经典 | 人人添人人澡 | av网站手机在线观看 | 国产精品普通话 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 国产一区二区播放 | 国产理论影院 | av中文天堂在线 | www免费| 久久久久久欧美二区电影网 | 国产视频1| av九九九| 久久久久北条麻妃免费看 | 五月天六月婷 | 成人天堂网 | 三级视频国产 | 久久精品99久久久久久2456 | 91精品电影 | 久久这里只有精品23 | a极黄色片| 久久久久婷 | 日本精品久久久一区二区三区 | 日日天天| 欧美日韩大片在线观看 | 国产 亚洲 欧美 在线 | 狠狠搞,com | 午夜国产福利在线观看 | 久久视频国产 | 中文字幕在线国产 | 91av福利视频| 日韩两性视频 | 国产激情电影综合在线看 | 久久久九色精品国产一区二区三区 | 国产在线无 | 欧美一级视频在线观看 | 欧洲一区二区在线观看 | 久久久久免费精品视频 | 国产成人精品一区二区三区免费 | 最近中文字幕免费 | 91爱爱网址 | 超碰在线97国产 | 婷婷色中文字幕 | 中文字幕无吗 | 国产一区二区久久久久 | 国产日韩av在线 | 日韩中文在线视频 | 99久久99久久 | 国产精品美女久久久久久久 | 日本精品中文字幕在线观看 | 日本在线观看中文字幕无线观看 | 91视频在线观看下载 | 国产一区二区观看 | 日韩中文字幕91 | 日本中文字幕网站 | 欧美最猛性xxx | 少妇自拍av | 日日干网址 | 在线观看国产亚洲 | 国产成人精品午夜在线播放 | 色综合天天综合在线视频 | 蜜桃av人人夜夜澡人人爽 | 91九色视频| 欧美乱大交 | 夜添久久精品亚洲国产精品 | 一区二区三区www | 免费观看av网站 | 国产精品不卡在线 | 韩国av永久免费 | 日本久久片 | 在线不卡的av| 四虎在线免费观看 | 999国产在线 | 天天干天天操天天 | 久久伊人精品一区二区三区 | 国产一级精品绿帽视频 | 国产高清久久 | 日本中文字幕在线视频 | 综合网色| 99久久电影 | 一区二区三区在线免费播放 | 国产成人精品av | 毛片视频网址 | 久艹在线观看视频 | 九九九九九国产 | 婷婷色在线 | 成年人在线看视频 | 国产精品视频线看 | 2024国产精品视频 | 国产 一区二区三区 在线 | 欧美午夜精品久久久久 | 黄色大片入口 | 日韩a在线看 | 国产精品美女久久久久久网站 | 西西大胆免费视频 | 午夜黄色影院 | 亚洲精品在线电影 | 日韩免费在线视频观看 | 99视频网址 | 九九一级片| 欧美二区视频 | 成人午夜毛片 | 九九综合在线 | 97成人精品视频在线观看 | 成人h动漫精品一区二 | 亚洲一二三久久 | 黄色网www| 我要色综合天天 | 天天干人人插 | 亚洲国产影院 | 天天综合91 | 精品影院一区二区久久久 | 日韩av男人的天堂 | 天天天天射 | 高清在线观看av | 国产精品第一 | 超碰在97 | 国产在线播放一区二区 | 激情视频免费观看 | 久久婷婷影视 | 欧美天堂久久 | 国产一级电影网 | 日韩在线色视频 | 日韩三级在线 | 久一网站 | 日韩高清av | 99精品黄色 | 人人射人人插 | 在线看成人av | 国产高清日韩 | 亚洲丝袜一区 | 在线观看精品一区 | 98精品国产自产在线观看 | 在线观看国产福利片 | 日韩色在线观看 | 精品在线观看一区二区 | av线上看 | 亚洲精品视频在线 | av888av.com | 欧美一区日韩精品 | 国产一区二区三区午夜 | 国产午夜三级一二三区 | 久久久久久美女 | 99热最新在线 | 久久久一本精品99久久精品 | 婷婷中文字幕在线观看 | 国产69久久精品成人看 | 日韩影视在线观看 | 日韩av看片 | 国产黄a三级三级三级三级三级 | 综合天天色 | 久久a免费视频 | 亚洲小视频在线 | 天天操人人干 | 视频成人 | 狠狠狠的干 | 亚洲男模gay裸体gay | 免费日韩 精品中文字幕视频在线 | 久草国产在线 | 美女网站色 | 国产在线视频导航 | av亚洲产国偷v产偷v自拍小说 | 国产精品一区二区三区99 | 天天射综合网视频 | 日韩成人高清在线 | 亚洲特级片 | 精品91在线 | 亚洲va综合va国产va中文 | 国产综合精品久久 | 欧美日本在线视频 | 欧美一区二区精美视频 | 久久婷婷国产色一区二区三区 | 亚洲天堂社区 | 中文字幕在线观看第一页 | 成人免费网视频 | 色噜噜日韩精品一区二区三区视频 | 日韩v欧美v日本v亚洲v国产v | 久久草草热国产精品直播 | av中文字幕在线免费观看 | 国产一级电影在线 | 婷婷丁香久久五月婷婷 | 国产成人av网址 | 国产黄在线 | 国产剧情在线一区 | 九九亚洲精品 | 亚洲天天综合网 | 色妞色视频一区二区三区四区 | 999成人| av免费在线免费观看 | 国产精品一二三 | av色网站| 婷婷电影在线观看 | 国产精品手机看片 | 亚洲精品在线视频播放 | 91在线看片| 91成熟丰满女人少妇 | 天天操天天爽天天干 | av免费在线观看网站 | 97碰碰精品嫩模在线播放 | 欧美日韩国产精品一区二区亚洲 | 精品九九九九 | 六月丁香婷婷网 | 欧美国产在线看 | 亚洲黄色免费在线 | 草久在线观看视频 | 婷婷五月在线视频 | 九九热在线免费观看 | 日韩黄色av网站 | 成人精品一区二区三区电影免费 | 国产精品成人免费精品自在线观看 | 九九有精品 | 免费特级黄毛片 | 日韩一级成人av | 9色在线视频 | 波多野结衣一区二区三区中文字幕 | 亚洲精品视频在线观看视频 | 精品女同一区二区三区在线观看 | 亚洲视频久久久 | 国产精品欧美久久久久天天影视 | 免费看的黄色 | 高清国产在线一区 | 三上悠亚在线免费 | av电影在线观看完整版一区二区 | 狠狠狠干 | 国产a网站 | 中文字幕第 | 精品国产一区二区三区久久久蜜月 | 成人免费观看完整版电影 | 伊人天天色 | 999精品在线| 人人揉人人揉人人揉人人揉97 | 一区二区视频免费在线观看 | 亚洲成a人片77777kkkk1在线观看 | 91精品国产91久久久久久三级 | 欧洲成人免费 | 欧美性大战 | av青草 | 中文字幕123区 | 黄色网在线免费观看 | 最近最新mv字幕免费观看 | 九九av| 国产一区视频在线 | 在线色视频小说 | 国产精品久久久久久久久久东京 | 韩国一区二区三区在线观看 | 九九色综合 | 日韩在线观看小视频 | 日韩在线观看高清 | 久久免费播放视频 | 欧美日韩亚洲精品在线 | 久久久国产精品久久久 | 97精品电影院 | 国产视频黄 | 91毛片在线| 亚洲国产av精品毛片鲁大师 | 在线观看免费一级片 | 人人干狠狠干 | 日韩欧美视频免费看 | 日韩videos高潮hd | 国产精品 日韩 | 亚洲欧洲视频 | 久久久久精 | 中文字幕在线一区二区三区 | 91免费高清观看 | 日韩在线观看的 | 福利av影院| av福利超碰网站 | 亚洲天天做 | 国内免费久久久久久久久久久 | 精品成人网| 国产精品一区二区三区久久 | 久久久久久久网站 | 久久精品波多野结衣 | 黄色成人在线 | 97精品超碰一区二区三区 | 国产成人免费av电影 | 欧美视频18 | 黄色小说免费在线观看 | 日韩一区二区免费播放 | 欧美极品少妇xbxb性爽爽视频 | 天天操天天摸天天射 | 久久成人国产精品入口 | 中文资源在线官网 | 99精品视频免费在线观看 | 天天综合区 | 亚洲综合视频在线 | 91免费日韩 | 国产不卡av在线播放 | 在线亚洲欧美视频 | 97视频在线观看播放 | 久久久综合精品 | 国产精品久久久久毛片大屁完整版 | 成人av一区二区兰花在线播放 | 亚洲 欧美 日韩 综合 | 日韩亚洲精品电影 | 色噜噜狠狠狠狠色综合久不 | 成人一级电影在线观看 | 视频一区在线播放 | 久久久午夜剧场 | 久久精品欧美日韩精品 | 国产一级片播放 | 国产视频1区2区 | 探花视频在线观看 | 亚洲va天堂va欧美ⅴa在线 | www.黄色网.com| 日日夜夜国产 | 亚洲精品久久在线 | 久久久精品国产一区二区电影四季 | 日韩高清久久 | 深夜视频久久 | 天天操天天操一操 | 成人高清av在线 | 日韩激情视频在线 | 在线免费av观看 | 日日添夜夜添 | 亚洲视频2| 欧美久久成人 | 国产精品av电影 | 久久免费毛片视频 | 成片免费观看视频大全 | 亚洲精品综合在线 | 欧美黑人巨大xxxxx | 日韩激情视频在线 | 国产精品12 | 国内精品久久久久久久97牛牛 | 三级在线国产 | 又黄又爽又无遮挡免费的网站 | 在线视频中文字幕一区 | 国产麻豆果冻传媒在线观看 | 人人插人人做 | 久久高清av | 色婷婷免费视频 | 天天骚夜夜操 | 99精品国产99久久久久久97 | 一级片免费视频 | 97超碰人人澡 | av解说在线观看 | 久久只精品99品免费久23小说 | 在线看成人 | 欧美日韩视频观看 | 成人va视频 | www.色婷婷 | 亚洲欧美乱综合图片区小说区 | 亚洲在线视频免费观看 | 欧美日韩在线观看一区二区三区 | 国产精品一区在线观看你懂的 | 丝袜美腿亚洲综合 | www.久热| 亚州av网站大全 | 国产剧情在线一区 | 亚洲欧美日韩一级 | 97国产情侣爱久久免费观看 | 超碰人人乐 | 欧美性生交大片免网 | 久久一区精品 | 免费久草视频 | 国产视频一区精品 | 国产九九精品视频 | 亚洲成人中文在线 | 人人添人人澡 | 成年人黄色大全 | 成人久久18免费网站图片 | 波多野结衣在线播放一区 | 俺要去色综合狠狠 | 成人网在线免费视频 | 国产又粗又猛又黄又爽的视频 | 久久久福利| 五月婷婷六月丁香激情 | 成人免费在线观看av | 黄色官网在线观看 | 日韩欧美第二页 | 欧美va天堂va视频va在线 | 国产精品一区二区白浆 | 丁香5月婷婷久久 | 亚洲欧美视频在线观看 | 国产精品久久久久久久久免费 | 伊人午夜 | 日日干夜夜操视频 | 涩涩网站在线观看 | 国产高清中文字幕 | 天天拍天天干 | 国产精品久久久久久久免费 | 亚洲最新毛片 | 天天干 天天摸 天天操 | 毛片精品免费在线观看 | 久久久久综合精品福利啪啪 | 亚洲综合色视频在线观看 | 91在线看免费 | 精品a在线| 精品国产视频在线 | 又黄又刺激的网站 | 中文av在线播放 | 国产精品久久久网站 | 中文字幕人成不卡一区 | 永久免费av在线播放 | 日韩欧美99| 麻豆视频免费在线播放 | 久久久久久久久久国产精品 | 久久久精品国产一区二区电影四季 | 久久九九免费 | 成年人在线播放视频 | 伊人影院99| 日韩精品免费 | 亚洲视屏| 四虎影视成人永久免费观看视频 | 精品国精品自拍自在线 | 色99在线 | 麻豆免费视频网站 | 精品久久久精品 | 免费在线观看av网站 | 欧美日韩不卡在线观看 | 中国一级片视频 | 亚洲国产日韩一区 | 中文字幕在线日 | 中文字幕专区高清在线观看 | 久久久久国产精品一区二区 | 免费在线国产视频 | 91精品国产综合久久婷婷香蕉 | 人人看人人 | 四虎在线观看精品视频 | 欧美日韩高清一区二区 | 97超碰资源总站 | 91在线看黄 | 一本一本久久a久久 | 欧美在线视频免费 | 久久视频免费在线 | 中文字幕国产在线 | 欧美人zozo | 天天干 夜夜操 | 午夜在线看| 91在线观 | 成人av影视| 激情av综合 | 亚洲精品美女视频 | 久久综合综合久久综合 | 人成免费网站 | 国产日韩精品一区二区三区在线 | 欧美成年网站 | 蜜臀av性久久久久蜜臀aⅴ四虎 | av亚洲产国偷v产偷v自拍小说 | 国产精品电影在线 | 欧美一区二区视频97 | av不卡免费在线观看 | 日韩免费久久 | 免费色黄 |