拖動(dòng) tableView 來縮放頂部圖片

在 UITableView 的頭部添加一個(gè) imageView,通過拉動(dòng) tableView 來放大縮小這個(gè) imageView.

效果如下:

20160527220410771.gif

實(shí)現(xiàn)步驟:

1.創(chuàng)建 tableView 的 headerView,并設(shè)置其frame,將背景色改為 clearColor;
2.創(chuàng)建一個(gè) UIImageView,與 tableViewHeaderView 一樣大小;
3.創(chuàng)建一個(gè) UIView,與tableView 一樣大小;
4.將 UIImageView 添加到 UIView 上,并將 UIView 設(shè)置為 tabelView 的 backgroundView 屬性

經(jīng)過以上 4 個(gè)步驟的設(shè)置,就以保正 UIImage 始終在 tableView 下面,不會(huì)遮住 tableView;

下面我們來看看代碼的實(shí)現(xiàn):

 #import "TTAMineTableViewController.h"

@interface TTAMineTableViewController ()
@property (strong,nonatomic) UIImageView *imageView;
@end

@implementation TTAMineTableViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    // 創(chuàng)建一個(gè) imageView 一張圖,大小與 tableHeaderView 大小相同
    UIImage *image = [UIImage imageNamed:@"hh"];
    UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
    imageView.frame = CGRectMake(0, 44, self.view.frame.size.width, 300);

    // 讓圖片內(nèi)容按原圖的比例放縮
    imageView.contentMode = UIViewContentModeScaleAspectFill;

    // 聲明一個(gè)屬性,后面改變 imageView 大小的時(shí)候要用到
    self.imageView = imageView;

    // 創(chuàng)建一個(gè) 背景 View,與屏幕一樣大小
    UIView *bgView = [[UIView alloc] initWithFrame:self.view.frame];

    // 將 imageView 加到 bgView 上
    [bgView addSubview:imageView];
    // 將 bgView 設(shè)置為 tableView 的 backgroundView 屬性
    self.tableView.backgroundView = bgView;

    // 設(shè)置 tableHeaderView 并將背景色設(shè)置為透明
    self.tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 300)];
    [self.tableView.tableHeaderView setBackgroundColor:[UIColor clearColor]];
}

 #pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 20;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
    if (!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
    }
    cell.textLabel.text = [NSString stringWithFormat:@"老司機(jī)老司機(jī)%zd",indexPath.row];
    return cell;
}

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{

    // 修改 imageView 的高
    CGRect frame = self.imageView.frame;

    CGFloat offsetY = self.tableView.contentOffset.y;

    if(offsetY > 0){
        frame.origin.y = -offsetY;
    }else{
        // 向下拉時(shí),放大,同時(shí)將 imageView 的頂部放在 y = 0 的位置
        frame.origin.y = 0;
        // 修改 imageView 的高度,就可以放大圖片了
        frame.size.height = 300 - offsetY * 2;
    }
    self.imageView.frame = frame;
}
@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末学赛,一起剝皮案震驚了整個(gè)濱河市归园,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌随闪,老刑警劉巖滑绒,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件闷堡,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡疑故,警方通過查閱死者的電腦和手機(jī)杠览,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來纵势,“玉大人踱阿,你說我怎么就攤上這事∏仗” “怎么了软舌?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)牛曹。 經(jīng)常有香客問我佛点,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任超营,我火速辦了婚禮鸳玩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘演闭。我一直安慰自己不跟,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布船响。 她就那樣靜靜地躺著躬拢,像睡著了一般。 火紅的嫁衣襯著肌膚如雪见间。 梳的紋絲不亂的頭發(fā)上聊闯,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音米诉,去河邊找鬼菱蔬。 笑死,一個(gè)胖子當(dāng)著我的面吹牛史侣,可吹牛的內(nèi)容都是我干的拴泌。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼惊橱,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼蚪腐!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起税朴,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤回季,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后正林,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體泡一,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年觅廓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鼻忠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡杈绸,死狀恐怖帖蔓,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瞳脓,我是刑警寧澤讨阻,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站篡殷,受9級(jí)特大地震影響钝吮,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一奇瘦、第九天 我趴在偏房一處隱蔽的房頂上張望棘催。 院中可真熱鬧,春花似錦耳标、人聲如沸醇坝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽呼猪。三九已至,卻和暖如春砸琅,著一層夾襖步出監(jiān)牢的瞬間宋距,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工症脂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留谚赎,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓诱篷,卻偏偏與公主長(zhǎng)得像壶唤,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子棕所,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

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

  • 版權(quán)聲明:未經(jīng)本人允許,禁止轉(zhuǎn)載. 1. TableView初始化 1.UITableView有兩種風(fēng)格:UITa...
    蕭雪痕閱讀 2,908評(píng)論 2 10
  • 代碼創(chuàng)建UIWindow對(duì)象 Xcode7之后使用代碼創(chuàng)建UIWindow對(duì)象: //創(chuàng)建UIWindow對(duì)象 s...
    云之君兮鵬閱讀 1,317評(píng)論 0 2
  • 1.badgeVaule氣泡提示 2.git終端命令方法> pwd查看全部 >cd>ls >之后桌面找到文件夾內(nèi)容...
    i得深刻方得S閱讀 4,662評(píng)論 1 9
  • Sass的基本介紹: 1闸盔、sass是css的一個(gè)預(yù)編譯處理器。增加了規(guī)則琳省、變量蕾殴、混入、選擇器岛啸、繼承等等特性。它是用...
    xcxerxes閱讀 956評(píng)論 0 2
  • 每次槍響 我都希望 中槍的人 忘記傷痛 槍 是一個(gè)惡魔 真真切切 皮肉炙烤的瞬間 惡魔的影子 留在軀體上 為什么要...
    左格拉閱讀 211評(píng)論 0 0