0

我正在尝试实现一个可滚动的图像,类似于带有 UIButtons 的书架。

使用第一种方法,我将架子设置为滚动条的 UIImage 背景。这看起来非常好,除了货架图像不滚动。

这就是它的样子

在此处输入图像描述

我尝试了第二种方法,它只是将滚动条的背景颜色设置为货架图像的图案图像版本。

这是我的第二个版本的代码:

- (void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];

    [self.scroller setScrollEnabled:YES];
    [self.scroller setContentSize:CGSizeMake(320, 700)];
    UIImage *shelfImage =  [UIImage imageNamed:@"Shelf.jpeg"];
    self.scroller.backgroundColor = [UIColor colorWithPatternImage:shelfImage];
}

这是(混乱的)图像:

在此处输入图像描述

主要问题:如何使此图案图像看起来像顶部的第一张图像?

4

1 回答 1

1

您应该改用 an UITableView。在此您可以cell.backgroundView轻松设置。

UIImageView *backgroundView = [[UIImageView alloc] initWithFrame:CGRectMake:(0.0,0.0,320.0, height)];
backgroundView.image = [UIImage imageNamed:@"Shelf.jpeg"];
cell.backgroundView = backgroundView;

如果你真的想只使用UIScrollView一个单元格背景图像,并且图像宽度应该与滚动视图的宽度相同,因为colorWithPatternImage:方法像平铺属性一样工作。

在此处输入图像描述

仅将此图像带入您的项目并backgroundColorUIScrollView.

[scrollView setContentSize:CGSizeMake(320.0, 1000.0)];
[scrollView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"cellImage.png"]]];

它看起来像这样:

在此处输入图像描述

但我想再次建议您使用UITableView而不是UIScrollView.

于 2013-08-05T04:38:03.043 回答