iOS-小Demo--下拉放大頂部圖片+毛玻璃效果

寒雨連江夜入?yún)瞧戎矫魉涂统焦拢?lt;露力麗>

記錄一個(gè)簡(jiǎn)單的下拉頂部圖片放大的效果宪赶,再加個(gè)毛玻璃!

iOS8之后毛玻璃效果實(shí)現(xiàn):
利用 UIVisualEffect這類實(shí)現(xiàn)毛玻璃效果脯燃, 這是一個(gè)抽象的類搂妻,不能直接使用,需通過(guò)它子類(UIBlurEffect, UIVibrancyEffect ) 外加 UIVisualEffectView 一起實(shí)現(xiàn);

 UIBlurEffect *blur = [UIBlurEffect effectWithStyle:(UIBlurEffectStyleLight)];
 UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:blur];
 effectView.frame = frame; // 加到相應(yīng)的位置即可```

>iOS7的實(shí)現(xiàn)依靠UIToolbar,創(chuàng)建一個(gè)UIToolbar實(shí)例辕棚,然后設(shè)置屬性 barStyle對(duì)應(yīng)的屬性值欲主,然后添加到父視圖上就好了邓厕!

>```code
 UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:frame];
 toolbar.barStyle = UIBarStyleBlackOpaque;// 設(shè)置毛玻璃樣式

效果圖:

思路: 我們通過(guò)監(jiān)聽(tīng) tableView 的下拉偏移量,通過(guò)偏移量的大小相應(yīng)的改變頂部圖片的 frame 而由于照片的填充模式扁瓢,就會(huì)產(chǎn)生一個(gè)放大的效果详恼!同時(shí)根據(jù)偏移量我們?nèi)バ薷拿AУ耐该鞫染蜁?huì)營(yíng)造出由模糊到清晰的視覺(jué)效果!


上代碼:
1:定義屬性

// 圖片下面的 tableView
@property (strong, nonatomic) UITableView *tableView;
// 頂部的照片
@property (strong, nonatomic) UIImageView *topImageView;
// 毛玻璃
@property (strong, nonatomic) UIVisualEffectView *effectView;

2: 布局 TableView

self.tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:(UITableViewStylePlain)];
self.tableView.dataSource = self;
self.tableView.delegate = self;
// 這里為了留出放照片的位置
self.tableView.contentInset = UIEdgeInsetsMake(imageHeight, 0, 0, 0); [self.view addSubview:_tableView];

3: 布局頂部的照片

self.topImageView = [[UIImageView alloc] initWithFrame:(CGRectMake(0, -imageHeight, self.view.frame.size.width, imageHeight))];
_topImageView.image = [UIImage imageNamed:@"lebron_raymone_james.jpg"];
# 關(guān)鍵: 照片按照自己的比例填充滿
    _topImageView.contentMode = UIViewContentModeScaleAspectFill;
# 關(guān)鍵: 超出 imageView部分裁減掉
    _topImageView.clipsToBounds = YES;
[self.tableView addSubview:self.topImageView];

4: 加毛玻璃效果

UIBlurEffect *blur = [UIBlurEffect effectWithStyle:(UIBlurEffectStyleLight)];
UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:blur];
effectView.frame = _topImageView.frame;
_effectView = effectView;
[self.tableView addSubview:_effectView];```
5:監(jiān)控  tableView 的滾動(dòng)引几, 下拉的時(shí)候讓圖片變大昧互,毛玻璃效果減弱
```code
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    // 向下的話 為負(fù)數(shù)
    CGFloat off_y = scrollView.contentOffset.y;NSLog(@"------->%f",off_y);
    CGFloat kHeight = [UIScreen mainScreen].bounds.size.height;
// 下拉超過(guò)照片的高度的時(shí)候
    if (off_y < - imageHeight)
    {
        CGRect frame = self.topImageView.frame;
// 這里的思路就是改變 頂部的照片的 fram
        self.topImageView.frame = CGRectMake(0, off_y, frame.size.width, -off_y);
        self.effectView.frame = self.topImageView.frame;
// 對(duì)應(yīng)調(diào)整毛玻璃的效果
        self.effectView.alpha = 1 + (off_y + imageHeight) / kHeight ;
    }   
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市伟桅,隨后出現(xiàn)的幾起案子敞掘,更是在濱河造成了極大的恐慌,老刑警劉巖贿讹,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件渐逃,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡民褂,警方通過(guò)查閱死者的電腦和手機(jī)茄菊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)赊堪,“玉大人面殖,你說(shuō)我怎么就攤上這事】蘖” “怎么了脊僚?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)遵绰。 經(jīng)常有香客問(wèn)我辽幌,道長(zhǎng),這世上最難降的妖魔是什么椿访? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任乌企,我火速辦了婚禮,結(jié)果婚禮上成玫,老公的妹妹穿的比我還像新娘加酵。我一直安慰自己,他們只是感情好哭当,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布猪腕。 她就那樣靜靜地躺著,像睡著了一般钦勘。 火紅的嫁衣襯著肌膚如雪陋葡。 梳的紋絲不亂的頭發(fā)上或舞,一...
    開(kāi)封第一講書(shū)人閱讀 49,829評(píng)論 1 290
  • 那天冻璃,我揣著相機(jī)與錄音假抄,去河邊找鬼近上。 笑死,一個(gè)胖子當(dāng)著我的面吹牛柴梆,可吹牛的內(nèi)容都是我干的陨溅。 我是一名探鬼主播,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼绍在,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼门扇!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起偿渡,我...
    開(kāi)封第一講書(shū)人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤臼寄,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后溜宽,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體吉拳,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年适揉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了留攒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嫉嘀,死狀恐怖炼邀,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情剪侮,我是刑警寧澤拭宁,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布,位于F島的核電站瓣俯,受9級(jí)特大地震影響杰标,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜彩匕,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一腔剂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧推掸,春花似錦桶蝎、人聲如沸驻仅。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)噪服。三九已至毡泻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粘优,已是汗流浹背仇味。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工呻顽, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人丹墨。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓廊遍,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親贩挣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子喉前,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • 思路: 我們通過(guò)監(jiān)聽(tīng) tableView 的下拉偏移量,通過(guò)偏移量的大小相應(yīng)的改變頂部圖片的 frame 而由于照...
    潮人花錢不用錢閱讀 347評(píng)論 0 2
  • 話說(shuō)蘋果在iOS7.0之后,很多系統(tǒng)界面都使用了毛玻璃效果,增加了界面的美觀性,比如下圖的通知中心界面; 效果圖:...
    Mr_董閱讀 1,292評(píng)論 0 0
  • iOS開(kāi)發(fā)中有的時(shí)候需要將圖片設(shè)置模糊王财,來(lái)實(shí)現(xiàn)特定的效果獲取更好的用戶體驗(yàn), iOS7之后半透明模糊效果得到大范圍...
    零距離仰望星空閱讀 46,506評(píng)論 47 223
  • 遙望天盡頭卵迂,俯瞰云腳下。 頭頂上是帶來(lái)熱氣的太陽(yáng)绒净,迎面而來(lái)的是清爽的海風(fēng)见咒,這是一種愜意。 站在這里挂疆,站在兩千多年前...
    江烏少俠閱讀 362評(píng)論 1 2
  • (1) 晚上從中介走出來(lái),深深地吸了一口氣墨闲。恩今妄,四個(gè)月前所謂定了的房子,最終還是要走上最壞的結(jié)果鸳碧。 于是會(huì)自責(zé)盾鳞,會(huì)...
    王小落閱讀 624評(píng)論 2 3