向下滚动TableView使UIImage背景向上移动

时间:2013-11-16 16:31:48

标签: ios image scroll tableview

您好,我正在努力做到这一点。

我有一个透明单元格背景的表格视图。

    cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"trans.png"]];

我向ViewDidLoad添加了背景图片。

 - (void)viewDidLoad {

    bgView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
    bgView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"homelights.png"]];

    [super viewDidLoad];

    self.title = @"";
  }

所以这很好用,我有一个带有透明单元格和背景图像的tableView。现在计划是当我向下滚动TableView时,图像应该反应并向上移动。

知道如何触发向下滚动吗?或者从哪里开始?


我启用了scrollViewDidScroll;

 - (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat scrollOffset = scrollView.contentOffset.y;

像魅力一样工作,我可以读取滚动位置,但是当我尝试动画UIView时,通过将scrollView.contentOffset.y链接到UIView“y”位置;

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat scrollOffset = scrollView.contentOffset.y;

    [UIView beginAnimations:@"UIViewAnimationCurveEaseInOut" context:nil];
    bgView.center = CGPointMake(bgView.center.x, bgView.center.y+scrollOffset);
    [UIView commitAnimations];

}

所以我试图使UIView更大到图像640x832的原始大小,以便能够在其上导航,但似乎不起作用。

 bgView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 640, 832)];
 bgView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"homelights.png"]];

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

您的表视图是UIScrollView的子类,表视图的委托也(自动)是滚动视图的委托。实现scrollViewDidScroll:委托方法并使用它来监视表视图的更改方式并移动背景视图。