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

首頁 > 系統 > iOS > 正文

iOS實現頭部拉伸效果

2020-07-26 02:28:06
字體:
來源:轉載
供稿:網友

本文實例為大家分享了iOS實現頭部拉伸效果展示的具體代碼,供大家參考,具體內容如下

主要涉及到導航欄透明度、圖片拉伸、列表頭部等。

  • 導航欄透明度的實現。
  • 列表拖動距離的監聽,及圖片放大的實現。

導航透明度的設置

添加系統導航欄的Category實現

聲明部分:

@interface UINavigationBar (BackgroundColor)- (void)lt_setBackgroundColor:(UIColor *)color;@end

實現部分:

#import <objc/runtime.h>@implementation UINavigationBar (BackgroundColor)static char overlayKey;- (UIView *)overlay{  return objc_getAssociatedObject(self, &overlayKey);}- (void)setOverlay:(UIView *)overlay{  objc_setAssociatedObject(self, &overlayKey, overlay, OBJC_ASSOCIATION_RETAIN_NONATOMIC);}- (void)lt_setBackgroundColor:(UIColor *)color{  if (!self.overlay) {    [self setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];    // insert an overlay into the view hierarchy    self.overlay = [[UIView alloc] initWithFrame:CGRectMake(0, -20, [UIScreen mainScreen].bounds.size.width, self.bounds.size.height + 20)];    self.overlay.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;    [self insertSubview:self.overlay atIndex:0];  }  self.overlay.backgroundColor = color;}@end

監聽列表拖動及實現圖片放大

主要是監聽滾動的距離(scrollViewDidScroll:方法)

#import "StretchViewController.h"#import "UINavigationBar+BackgroundColor.h"http:// 背景圖片的寬高比例#define ratio 0.8@interface StretchViewController () <UITableViewDelegate, UITableViewDataSource>// 可放大的背景圖片@property (nonatomic, strong) UIImageView *bgView;// 記錄原始大小@property (assign) CGRect originalFrame;@property (nonatomic, strong) UITableView *tableView;@end@implementation StretchViewController- (void)viewWillAppear:(BOOL)animated{  [super viewWillAppear:animated];  //[self.navigationController setNavigationBarHidden:YES animated:animated];  //self.navigationController.navigationBar.tintColor = [UIColor whiteColor];  //self.navigationController.navigationBar.barTintColor = [UIColor clearColor];  //self.navigationController.navigationBar.backgroundColor = [UIColor clearColor];  // 設置導航欄底部分割線為透明  [self.navigationController.navigationBar setShadowImage:[UIImage new]];}- (void)viewDidLoad {  [super viewDidLoad];  // 設置全透明  [self.navigationController.navigationBar lt_setBackgroundColor:[[UIColor greenColor] colorWithAlphaComponent:0]];  // Do any additional setup after loading the view.  self.view.backgroundColor = [UIColor lightGrayColor];  self.bgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.width*ratio)];  self.bgView.image = [UIImage imageNamed:@"bg-mine"];  self.originalFrame = self.bgView.frame;  [self.view addSubview:self.bgView];  self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 64, self.view.bounds.size.width, self.view.bounds.size.height-64) style:UITableViewStylePlain];  self.tableView.backgroundColor = [UIColor clearColor];  self.tableView.showsVerticalScrollIndicator = NO;  self.tableView.delegate = self;  self.tableView.dataSource = self;  // 1. contentInset  //table.contentInset = UIEdgeInsetsMake(160, 0, 0, 0);  // 2. heatView  UIView *headView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, 160)];  headView.backgroundColor = [UIColor clearColor];  self.tableView.tableHeaderView = headView;  [self.view addSubview:self.tableView];}- (nonnull UITableViewCell *)tableView:(nonnull UITableView *)tableView cellForRowAtIndexPath:(nonnull NSIndexPath *)indexPath {  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cellIdentifier"];  if (cell == nil) {    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cellIdentifier"];  }  cell.textLabel.text = @"測試數據";  return cell;}- (NSInteger)tableView:(nonnull UITableView *)tableView numberOfRowsInSection:(NSInteger)section {  return 10;}- (void)scrollViewDidScroll:(UIScrollView *)scrollView{  CGFloat yOffset = scrollView.contentOffset.y; // 向上滑動,offset是增加的;向下滑動,是減少的  if (yOffset < 160) { // 當滑動到導航欄底部時    CGFloat colorAlpha = yOffset/160;//    self.navigationController.navigationBar.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:colorAlpha];    [self.navigationController.navigationBar lt_setBackgroundColor:[[UIColor whiteColor] colorWithAlphaComponent:colorAlpha]];  } else { // 超過導航欄底部了    [self.navigationController.navigationBar lt_setBackgroundColor:[UIColor whiteColor]];  }  // 往上滑動效果、處理放大效果  if (yOffset > 0) {    self.bgView.frame = ({      CGRect frame = self.bgView.frame;      frame.origin.y = self.originalFrame.origin.y - yOffset;      frame;    });  } else { // 往下移動,放大效果    self.bgView.frame = ({      CGRect frame = self.originalFrame;      frame.size.height = self.originalFrame.size.height - yOffset;      frame.size.width = frame.size.height/ratio;      //      frame.origin.x = self.originalFrame.origin.x - (frame.size.width - self.originalFrame.size.width)/2;      frame;    });  }}@end

以上是對系統原生的導航欄進行透明度設置。

也可進行自定義視圖設置為導航欄

效果如下:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美日韩国产成人| 在线观看精品自拍私拍| 国产精品pans私拍| 欧美国产精品va在线观看| 日韩经典中文字幕在线观看| 久久精品91久久香蕉加勒比| 亚洲一区免费网站| 91亚洲精品一区二区| 亚洲va欧美va在线观看| 欧美激情图片区| 欧美夫妻性视频| 最近免费中文字幕视频2019| 欧美精品999| 91理论片午午论夜理片久久| 成人久久久久爱| 欧美成人精品一区| 伊人伊成久久人综合网小说| 91av视频在线观看| 欧美日韩亚洲一区二| 国内精品免费午夜毛片| 亚洲第一页自拍| 欧美日韩国产一区二区| 91精品久久久久久久久久久| 欧美片一区二区三区| 91sao在线观看国产| 91精品视频在线播放| 久久精品国产成人精品| 成人免费自拍视频| 欧美成人一区在线| 欧美黄色免费网站| www日韩中文字幕在线看| 久久久久久国产精品| 国产成人亚洲综合青青| 日韩美女在线播放| 亚洲爱爱爱爱爱| 色偷偷888欧美精品久久久| 青青精品视频播放| 久久欧美在线电影| 欧美专区国产专区| 亚洲成人国产精品| 日韩最新免费不卡| 国产精品视频xxx| 欧美亚洲在线播放| 欧美成人午夜激情在线| 91日韩在线播放| 国产精品爽黄69天堂a| 亚洲精品日韩激情在线电影| 国产精品视频免费在线| 日韩欧美精品免费在线| 色999日韩欧美国产| 日韩免费观看网站| 日韩激情在线视频| www.日韩系列| 91高潮在线观看| 国产视频综合在线| 久久久国产视频91| 国内精品久久久久久| 91九色国产社区在线观看| 日韩av在线免费播放| 久久福利视频导航| 成人观看高清在线观看免费| 久久精品亚洲国产| 色偷偷91综合久久噜噜| 欧美一性一乱一交一视频| 亚洲最大福利视频网站| 日韩中文字幕精品视频| 日本一区二三区好的精华液| 日韩在线免费视频观看| 色综合久久精品亚洲国产| 亚洲精品天天看| 美日韩精品免费观看视频| 亚洲丁香久久久| 欧美在线视频一区| 久久精品视频播放| 精品高清美女精品国产区| 亚洲国产精品网站| 亚洲男人的天堂在线| 日本亚洲欧美成人| 中文字幕日韩欧美精品在线观看| 欧美日韩另类视频| 国模精品视频一区二区三区| 日韩av在线免费观看| 午夜精品久久久久久久久久久久| 一区二区国产精品视频| 91麻豆国产精品| 成人亚洲综合色就1024| 精品视频在线导航| 97成人超碰免| 国产不卡av在线免费观看| 性欧美xxxx视频在线观看| 久久av在线播放| 欧美激情免费视频| 亚洲欧美日韩一区二区在线| 国产视频久久久| 久久影院在线观看| 亚洲精品xxx| 欧美激情va永久在线播放| 国产精品成人一区二区三区吃奶| 欧美自拍视频在线观看| 色哟哟网站入口亚洲精品| 亚洲毛茸茸少妇高潮呻吟| 久久久久久久久久久久久久久久久久av| 91久久夜色精品国产网站| 欧美激情精品久久久久久| 性欧美亚洲xxxx乳在线观看| 精品国偷自产在线视频| 久久97精品久久久久久久不卡| 亚洲欧美日韩中文在线制服| 亚洲国产成人av在线| 精品国产乱码久久久久久天美| 久久久久亚洲精品| 国产精品久久久久久久久久99| 亚洲三级黄色在线观看| 萌白酱国产一区二区| 亚洲影院高清在线| 在线性视频日韩欧美| 国产亚洲福利一区| 日韩极品精品视频免费观看| 亚洲91av视频| 国内免费久久久久久久久久久| 日韩精品黄色网| 毛片精品免费在线观看| 欧美日韩裸体免费视频| 国产欧美最新羞羞视频在线观看| 久久五月天综合| 成人妇女免费播放久久久| 亚洲美女黄色片| 日韩69视频在线观看| 3344国产精品免费看| 青青精品视频播放| 日韩av片永久免费网站| 久久久久久成人| 欧美有码在线观看视频| 精品久久久久久中文字幕| 日韩成人在线观看| 日韩三级影视基地| 久久久91精品国产| 欧美激情videoshd| 国产欧美精品久久久| 国产狼人综合免费视频| 韩国福利视频一区| 精品亚洲一区二区三区| 色偷偷av一区二区三区| 久久久噜噜噜久久久| 精品成人乱色一区二区| 久久视频国产精品免费视频在线| 97精品伊人久久久大香线蕉| 国产一区av在线| 欧洲成人午夜免费大片| 国产精品视频色| 国产精品va在线播放我和闺蜜| 在线观看日韩www视频免费| 国产精品1区2区在线观看| 久久91亚洲人成电影网站| 国产精品久久久久久久久久新婚| 久久久久久av| www.日韩视频| 久久视频在线观看免费| 亚洲人成电影网站色…| 国产在线久久久| 中国china体内裑精亚洲片| 国产成人激情视频| 欧美激情女人20p| 中文字幕无线精品亚洲乱码一区|