亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS開發之tableView點擊下拉擴展與內嵌collectionView上傳圖片效果

2020-07-26 03:22:29
字體:
來源:轉載
供稿:網友

廢話不多說了,直奔主題。

//需要的效果

1.設置window的根視圖控制器為一個UITableViewController

#import "AppDelegate.h"#import "YCTableViewController.h"@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];self.window.backgroundColor = [UIColor whiteColor];self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:[[YCTableViewController alloc] init]];[self.window makeKeyAndVisible];return YES;}

2.UITableViewController

// Copyright © 2016年 Chason. All rights reserved.//#import <UIKit/UIKit.h>#import "DepositFeeHeader.h"#import "DepositFeeWithApplyTableViewCell.h"#import "AppModel.h"#import "MyCollectionViewCell.h"#import "SectionHeaderViewCollectionReusableView.h"@interface YCTableViewController : UITableViewController<UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout, UIImagePickerControllerDelegate, UIActionSheetDelegate, UINavigationControllerDelegate>@property (nonatomic, strong) NSMutableArray *dataArray;@property (nonatomic, strong) NSMutableArray *ownHobby;//上傳圖片數組1@property (nonatomic, strong) NSMutableArray *imageArray;//上傳圖片數組2@property (nonatomic, strong) UICollectionView *collection;@property (nonatomic, strong) UIActionSheet *actionSheet;@property (nonatomic, strong) AppModel *model;@property (nonatomic, assign) NSInteger reUpdate;@property (nonatomic, strong) NSString *imageString;@property (nonatomic, assign) NSInteger number;@end// Copyright © 2016年 Chason. All rights reserved.//#import "YCTableViewController.h"http://手機屏幕的寬和高#define kScreenWidth [UIScreen mainScreen].bounds.size.width#define KScreenHeight [UIScreen mainScreen].bounds.size.height@interface YCTableViewController ()@end@implementation YCTableViewController- (void)viewDidLoad {[super viewDidLoad];_dataArray = [[NSMutableArray alloc] initWithCapacity:1];for (int i = 0; i < 3; i++) {AppModel *model = [[AppModel alloc] init];[_dataArray addObject:model];}_ownHobby = [NSMutableArray array];_reUpdate = 10000;//賦初值}- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{AppModel *model = _dataArray[section];if ([model Is_Open]) {return 1;}else{return 0;}}- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{[_ownHobby removeAllObjects];for (int i = 0; i < _dataArray.count; i++) {_imageArray= [NSMutableArray array];[_ownHobby addObject:_imageArray];}return _dataArray.count;}- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{AppModel *model = _dataArray[section];if (model.Is_Open == YES || section == _dataArray.count - 1) {return 0.01;}else {return 10;}}-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{UIView *backView = [[UIView alloc] init];backView.backgroundColor = [UIColor whiteColor];return backView;}- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{return 40;}- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{return 200;}- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{DepositFeeHeader *depositHeader = [tableView dequeueReusableHeaderFooterViewWithIdentifier:@"deposit"];if (depositHeader == nil) {depositHeader = [[DepositFeeHeader alloc] initWithReuseIdentifier:@"deposit"];}depositHeader.tag = 1000 + section;[depositHeader.tap addTarget:self action:@selector(showDetail:)];CGFloat rota;AppModel *model = _dataArray[section];if ([model Is_Open] == NO) {rota=0;}else{rota=M_PI_2;}[UIView animateWithDuration:0.1 animations:^{depositHeader.listImage.transform = CGAffineTransformMakeRotation(rota);}];return depositHeader;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{if (indexPath.section != _reUpdate) {AppModel *model = _dataArray[indexPath.section];DepositFeeWithApplyTableViewCell *cell = [[DepositFeeWithApplyTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"applyCell"];UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc]init];flowLayout.minimumInteritemSpacing = 5;flowLayout.minimumLineSpacing = 5;flowLayout.sectionInset = UIEdgeInsetsMake(0 , 5 , 0 , 10 );flowLayout.itemSize = CGSizeMake(40 , 40);_collection = [[UICollectionView alloc]initWithFrame:CGRectMake(10, 10, cell.backView.frame.size.width - 20, 90) collectionViewLayout:flowLayout];[_collection registerClass:[SectionHeaderViewCollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"head"];_collection.tag = indexPath.section;_collection.bounces = NO;_collection.delegate = self;_collection.dataSource = self;_collection.backgroundColor = [UIColor whiteColor];[_collection registerClass:[MyCollectionViewCell class] forCellWithReuseIdentifier:@"identifier"];[cell.backView addSubview:_collection];[cell.shouldBtn addTarget:self action:@selector(upImage:) forControlEvents:UIControlEventTouchUpInside];cell.shouldBtn.tag = indexPath.row + 2000;cell.selectionStyle = UITableViewCellSelectionStyleNone;return cell;}else{return nil;}}//對照片進行處理- (void)upImage:(UIButton *)btn{}-(void)textfiledShow{if ([_ownHobby[_number] count] == 9) {UIAlertController *alert1 = [UIAlertController alertControllerWithTitle:@"上傳照片不能超過9張, 點擊圖片可以刪除" message:@"" preferredStyle:UIAlertControllerStyleAlert];UIAlertAction *action = [UIAlertAction actionWithTitle:@"確定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {}];[alert1 addAction:action];[self.navigationController presentViewController:alert1 animated:YES completion:nil];}else{[self callActionSheet];}}//彈框提示相片來源- (void)callActionSheet{if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {self.actionSheet = [[UIActionSheet alloc] initWithTitle:@"選擇照片" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"拍照", @"從相冊選擇", nil];}else{self.actionSheet = [[UIActionSheet alloc] initWithTitle:@"選擇照片" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"從相冊選擇", nil];}[self.actionSheet showInView:self.tableView];}- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{NSUInteger sourceType = UIImagePickerControllerSourceTypePhotoLibrary;//pand是否支持相機if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {switch (buttonIndex) {case 0:sourceType = UIImagePickerControllerSourceTypeCamera;break;case 1:sourceType = UIImagePickerControllerSourceTypePhotoLibrary;break;default:return;}}else{if (buttonIndex == 1) {return;}else{sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;}}UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];imagePicker.delegate = self;imagePicker.allowsEditing = YES;imagePicker.sourceType = sourceType;[self.navigationController presentViewController:imagePicker animated:YES completion:^{}];}-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{[picker dismissViewControllerAnimated:YES completion:^{}];[_ownHobby[_number] addObject:[info objectForKey:UIImagePickerControllerOriginalImage]];[_collection reloadData];}

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{_number = collectionView.tag;if ([_ownHobby[_number] count] == indexPath.row) {MyCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"identifier" forIndexPath:indexPath];UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(textfiledShow)];[cell.imageView addGestureRecognizer:tap];cell.imageView.userInteractionEnabled = YES;cell.cellStyle = cellStyleAdd;cell.layer.masksToBounds = NO;cell.layer.borderWidth = 0;cell.layer.cornerRadius = 0;[cell layoutSubviews];return cell;}else{MyCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"identifier" forIndexPath:indexPath];cell.photo.image = _ownHobby[_number][indexPath.row];cell.cellStyle = 1;[cell layoutSubviews];[cell.imageView removeFromSuperview];return cell;}}-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{return 1;}-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{return [_ownHobby[_number] count] + 1;}#pragma mark 頭視圖size-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{CGSize size = {0.01, 0.01};return size;}#pragma mark 每個Item大小-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{return CGSizeMake(40, 40);}-(CGFloat)lengthWithString:(NSString *)string{return [string length];}-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{if ([_ownHobby[_number] count]) {[_ownHobby[_number] removeObjectAtIndex:indexPath.row];[_collection reloadData];}}- (void)showDetail:(UITapGestureRecognizer *)tap{AppModel *model = _dataArray[tap.view.tag - 1000];if ([model Is_Open]) {model.Is_Open = NO;}else{model.Is_Open = YES;}[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:tap.view.tag - 1000] withRowAnimation:UITableViewRowAnimationNone];}@end

3.自定義tableview的header和cell

//header// Copyright © 2016年 Chason. All rights reserved.//#import <UIKit/UIKit.h>@interface DepositFeeHeader : UITableViewHeaderFooterView@property (nonatomic, strong) UILabel *titleLabel;@property (nonatomic, strong) UIImageView *listImage;//尾按鈕@property (nonatomic, strong) UIGestureRecognizer *tap;@end// Copyright © 2016年 Chason. All rights reserved.//#import "DepositFeeHeader.h"http://手機屏幕的寬和高#define kScreenWidth [UIScreen mainScreen].bounds.size.width#define KScreenHeight [UIScreen mainScreen].bounds.size.height@implementation DepositFeeHeader- (instancetype)initWithReuseIdentifier:(NSString *)reuseIdentifier{self = [super initWithReuseIdentifier:reuseIdentifier];if (self) {UIView *backView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, 40)];backView.backgroundColor = [UIColor whiteColor];[self addSubview:backView];self.titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 10, kScreenWidth - 45, 20)];self.titleLabel.text = @"車輛押金";self.titleLabel.userInteractionEnabled = YES;self.titleLabel.textColor = [UIColor grayColor];[backView addSubview:self.titleLabel];self.listImage = [[UIImageView alloc] initWithFrame:CGRectMake(kScreenWidth - 25, 10, 10, 20)];self.listImage.image = [UIImage imageNamed:@"jiantou.png"];[backView addSubview:self.listImage];UIImageView *headerLine = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, 1)];headerLine.image = [UIImage imageNamed:@"line"];[backView addSubview:headerLine];UIImageView *footerLine = [[UIImageView alloc] initWithFrame:CGRectMake(0, 39, kScreenWidth, 1)];footerLine.image = [UIImage imageNamed:@"line"];[backView addSubview:footerLine];self.tap = [[UITapGestureRecognizer alloc] init];[self addGestureRecognizer:self.tap];}return self;}@end//cell// Copyright © 2016年 Chason. All rights reserved.//#import <UIKit/UIKit.h>@interface DepositFeeWithApplyTableViewCell : UITableViewCell@property (nonatomic, strong) UIView *backView;@property (nonatomic, strong) UIButton *cameraBtn;@property (nonatomic, strong) UIImageView *photoImg;@property (nonatomic, strong) UILabel *updatePresent;@property (nonatomic, strong) UIButton *shouldBtn;@end// Copyright © 2016年 Chason. All rights reserved.//#import "DepositFeeWithApplyTableViewCell.h"http://手機屏幕的寬和高#define kScreenWidth [UIScreen mainScreen].bounds.size.width#define KScreenHeight [UIScreen mainScreen].bounds.size.height@implementation DepositFeeWithApplyTableViewCell- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];if (self) {_backView = [[UIView alloc] initWithFrame:CGRectMake(20, 15, kScreenWidth - 40, 170)];[self addSubview:_backView];[self addDottedLineFromImageView:_backView];self.updatePresent = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth - 40, 20)];self.updatePresent.center = CGPointMake((kScreenWidth - 40) / 2, 110);self.updatePresent.text = @"點擊左上角按鈕添加照片";self.updatePresent.textColor = [UIColor lightGrayColor];self.updatePresent.textAlignment = NSTextAlignmentCenter;self.updatePresent.font = [UIFont systemFontOfSize:14];[_backView addSubview:self.updatePresent];self.shouldBtn = [UIButton buttonWithType:UIButtonTypeCustom];self.shouldBtn.frame = CGRectMake((kScreenWidth - 40) / 2 - 45, 130, 90, 20);[self.shouldBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];[self.shouldBtn setTitle:@"立即上傳" forState:UIControlStateNormal];self.shouldBtn.layer.cornerRadius = 5;self.shouldBtn.backgroundColor = [UIColor colorWithRed:18/255.0 green:129/255.0 blue:201/255.0 alpha:1];[_backView addSubview:self.shouldBtn];}return self;}//添加虛線框- (void)addDottedLineFromImageView:(UIView *)superView{CGFloat w = superView.frame.size.width;CGFloat h = superView.frame.size.height;CGFloat padding = 20;//創建四個imageView作邊框for (NSInteger i = 0; i<4; i++) {UIImageView *imageView = [[UIImageView alloc] init];imageView.backgroundColor = [UIColor clearColor];if (i == 0) {imageView.frame = CGRectMake(0, 0, w, padding);}else if (i == 1){imageView.frame = CGRectMake(0, 0, padding, h);}else if (i == 2){imageView.frame = CGRectMake(0, h - padding, w, padding);}else if (i == 3){imageView.frame = CGRectMake(w - padding, 0, padding, h);}[superView addSubview:imageView];UIGraphicsBeginImageContext(imageView.frame.size); //開始畫線[imageView.image drawInRect:CGRectMake(0, 0, imageView.frame.size.width, imageView.frame.size.height)];CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound); //設置線條終點形狀CGFloat lengths[] = {10,5};CGContextRef line = UIGraphicsGetCurrentContext();CGContextSetStrokeColorWithColor(line, [UIColor blackColor].CGColor);CGContextSetLineDash(line, 0, lengths, 2); //畫虛線CGContextMoveToPoint(line, 0, 0); //開始畫線if (i == 0) {CGContextAddLineToPoint(line, w, 0);}else if (i == 1){CGContextAddLineToPoint(line, 0, w);}else if (i == 2){CGContextMoveToPoint(line, 0, padding);CGContextAddLineToPoint(line, w, padding);}else if (i == 3){CGContextMoveToPoint(line, padding, 0);CGContextAddLineToPoint(line, padding, w);}CGContextStrokePath(line);imageView.image = UIGraphicsGetImageFromCurrentImageContext();}}@end

4.collectionView布局和自定義item

#import <UIKit/UIKit.h>@interface SectionHeaderViewCollectionReusableView : UICollectionReusableView@property(nonatomic, strong)UILabel *titleLabel;@end#import "SectionHeaderViewCollectionReusableView.h"@implementation SectionHeaderViewCollectionReusableView-(instancetype)initWithFrame:(CGRect)frame{self = [super initWithFrame:frame];if (self) {[self createViews];}return self;}-(void)createViews{_titleLabel = [[UILabel alloc]init];[self addSubview:_titleLabel];}-(void)layoutSubviews{[super layoutSubviews];_titleLabel.frame = CGRectMake(20, 30, 375, 50);_titleLabel.font = [UIFont systemFontOfSize:20];}@endcollectionView的item#import <UIKit/UIKit.h>@interface MyCollectionViewCell : UICollectionViewCelltypedef enum : NSInteger{cellStyleDefault = 0,cellStyleSelected = 1,cellStyleAdd = 2,}CollectionViewCellStyle;@property(nonatomic, assign)CollectionViewCellStyle cellStyle;@property(nonatomic, strong)UIImageView *photo;@property(nonatomic, strong)UIImageView *imageView;@property(nonatomic, strong)NSArray *array;@property(nonatomic, strong)NSMutableArray *dataArray;-(void)layoutSubviews;@end#import "MyCollectionViewCell.h"@implementation MyCollectionViewCell-(instancetype)initWithFrame:(CGRect)frame{self = [super initWithFrame:frame];if (self) {_photo = [[UIImageView alloc]init];_imageView = [[UIImageView alloc]init];}return self;}-(void)layoutSubviews{[super layoutSubviews];[_photo setFrame:self.bounds];_imageView.frame = self.bounds;switch (_cellStyle) {case cellStyleDefault:self.layer.borderColor = [UIColor colorWithRed:0 green:0.68 blue:0.94 alpha:1].CGColor;self.layer.masksToBounds = YES;self.layer.borderWidth = 1.8;//self.layer.cornerRadius = 20;self.backgroundColor = [UIColor whiteColor];[self.contentView addSubview:_photo];break;case cellStyleSelected:self.layer.borderColor = [UIColor colorWithRed:0 green:0.68 blue:0.94 alpha:1].CGColor;self.layer.masksToBounds = YES;self.layer.borderWidth = 1.8;//self.layer.cornerRadius = 20;self.backgroundColor = [UIColor colorWithRed:0 green:0.68 blue:0.94 alpha:1];[self.contentView addSubview:_photo];break;case cellStyleAdd:[self.imageView setImage:[UIImage imageNamed:@"addPhoto.png"]];self.backgroundColor = [UIColor whiteColor];[self.contentView addSubview:_imageView];break;default:break;}}@end

5.model

#import <Foundation/Foundation.h>#import <UIKit/UIKit.h>@interface AppModel : NSObject@property (nonatomic, assign) BOOL Is_Open;@end#import "AppModel.h"@implementation AppModel@end//設置model是為了設置一個bool類型的變量,用來記錄tableview的cell是否展開,從而進行reloadSection操作,進行動畫展開或收縮.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色婷婷综合成人| 国产在线观看不卡| 久色乳综合思思在线视频| 一个人www欧美| 久久五月情影视| 欧美精品电影在线| 久久久久久九九九| 欧洲成人性视频| 中文字幕精品在线| 91精品视频网站| 国产亚洲成精品久久| 日韩电影大片中文字幕| 久久影院中文字幕| 欧洲成人午夜免费大片| 欧美激情2020午夜免费观看| 亚洲伊人第一页| 亚洲视频在线观看免费| 日韩中文在线观看| 日韩国产高清视频在线| 欧美日韩激情网| 亚洲国产精久久久久久| 国产精品高潮呻吟久久av黑人| 久久久999精品免费| 中文字幕精品在线| 在线国产精品播放| 亚洲一区二区福利| 国产一区二区三区免费视频| 亚洲欧美在线第一页| 日韩欧美a级成人黄色| 亚洲一区二区三区xxx视频| 少妇高潮 亚洲精品| 欧美韩国理论所午夜片917电影| 欧美性猛交xxxx偷拍洗澡| 91久久久久久久久久| 成人欧美一区二区三区黑人孕妇| 国产日韩精品一区二区| 日韩欧美在线视频观看| 欧美极品第一页| 欧日韩不卡在线视频| 久久影视电视剧凤归四时歌| 国产成人精品一区二区在线| 久久久久久久久久久人体| 亚洲精品一区中文| 欧美人成在线视频| 最近2019年好看中文字幕视频| 成人性生交大片免费看小说| 欧美专区国产专区| 日韩中文字幕久久| 精品国偷自产在线| 俺也去精品视频在线观看| 国色天香2019中文字幕在线观看| 日韩欧美成人网| 国产欧美日韩综合精品| 精品国产美女在线| 精品国内产的精品视频在线观看| 欧美色道久久88综合亚洲精品| 欧美日韩免费网站| 国产精品wwwwww| 91久久在线观看| 欧美超级免费视 在线| 国产精品福利在线观看网址| 国产精品青草久久久久福利99| 久久久久这里只有精品| 91在线中文字幕| 国产欧美日韩综合精品| 久久久久久久久久av| 欧美韩日一区二区| www.欧美视频| 欧美性感美女h网站在线观看免费| 精品国产一区二区在线| 亚洲视屏在线播放| 91日本在线视频| 最近中文字幕mv在线一区二区三区四区| 国产偷亚洲偷欧美偷精品| 中文字幕久热精品在线视频| 日韩女优人人人人射在线视频| 国产在线视频2019最新视频| 日韩亚洲精品视频| 96sao精品视频在线观看| 国产一区二区在线播放| 亚洲第一视频在线观看| 久久手机精品视频| 亚洲美女av黄| 国产精品亚洲精品| 欧美午夜激情视频| 欧美自拍大量在线观看| 91极品视频在线| 日韩综合视频在线观看| 97香蕉久久夜色精品国产| 亚洲精品视频中文字幕| 国产精品视频色| 日韩免费观看av| 中文字幕在线观看日韩| 欧美在线激情网| 精品国内亚洲在观看18黄| 日韩美女写真福利在线观看| 久久久国产一区二区| 久久久亚洲精选| 国产一区二区三区高清在线观看| 色偷偷综合社区| 欧美激情视频在线观看| 欧美成人sm免费视频| 欧美噜噜久久久xxx| 91精品国产成人www| 成人国产精品av| 欧美日韩中文字幕综合视频| 97香蕉久久超级碰碰高清版| 欧美日韩国产精品一区二区三区四区| 中文字幕久久久av一区| 欧美视频一区二区三区…| 在线观看欧美成人| 久久伊人免费视频| 欧美综合在线观看| 96pao国产成视频永久免费| 日韩动漫免费观看电视剧高清| 日韩精品在线观看网站| 黄色成人av网| 欧美伦理91i| 亚洲aⅴ日韩av电影在线观看| 亚洲精品动漫100p| 亚洲第一精品电影| 91啪国产在线| 国产一区二区三区在线观看视频| 成人国产精品免费视频| 亚洲黄色av女优在线观看| 欧美一级大胆视频| 欧美成人精品三级在线观看| 欧美日韩美女在线| 亚洲女在线观看| 日韩一区视频在线| 4k岛国日韩精品**专区| 国产精品igao视频| 国产成人亚洲综合青青| 欧美日韩国产精品| 日本一区二区不卡| 亚洲另类xxxx| 91av在线网站| 亚洲一区中文字幕| 国产视频在线一区二区| 亚洲成人免费在线视频| 亚洲精品视频在线观看视频| 亚洲欧美一区二区三区四区| 国产69久久精品成人| 成人精品久久av网站| 久久久久免费精品国产| 亚洲欧美日韩另类| 日韩一级黄色av| 日韩视频一区在线| 91精品视频免费观看| 亚洲精品天天看| 亚洲欧美日韩天堂| 午夜精品一区二区三区在线| 97视频在线看| 久久精品中文字幕免费mv| 欧美精品久久久久a| 亚洲男人7777| 91国内揄拍国内精品对白| 亚洲视频在线观看免费| 欧美日韩成人黄色| 欧美成人亚洲成人日韩成人| 九九热最新视频//这里只有精品| 国产精品网站视频| 亚洲国产精品yw在线观看| 亚洲精品欧美极品|