为UIImageView分配图像问题

时间:2015-01-19 22:41:18

标签: ios objective-c uiimageview uiimage

我有一个UIImageView,我附加到滚动视图,每当滚动视图滚动我想要设置一个图像到这个UIImageView(我使用不同的UIImageView,因为每当滚动视图contentOffset属性到达某一点我想要将图像更改为其他图像。)

所以我将这三个属性添加到我的视图控制器中:

@property (weak, nonatomic) IBOutlet UIImageView *vMarkIcn;
@property (weak, nonatomic) IBOutlet UIImageView *greenVmarkIcn;
@property (weak, nonatomic) IBOutlet UIImageView *currentScrollImage;

在我的viewDidLoad中:

- (void)viewDidLoad {

    [super viewDidLoad];
   //this is the initial image i want to be
    self.currentScrollImage.image = self.vMarkIcn.image;
}

我的scrollViewDidScroll

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

    if (self.myScrollView.contentOffset.y <= -73) {

        self.currentScrollImage.image = self.greenVmarkIcn.image;
    }
    NSLog(@"%f", self.myScrollView.contentOffset.y);
}

最后在我scrollViewDidEndDecelerating我将其更改回vMarkIcn:

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

    self.currentScrollImage.image = self.vMarkIcn.image;
}

iv将currentScrollImage设置为要填充的比例,但vMarkIcn的大小变得奇怪......我在这里做错了什么? :/

它像拉伸或什么......

图片尺寸:

currentScrollImage = 50x50
vMarkIcn = 28x20
greenVmarkIcn = 50x50

但我希望currentScrollImage缩放到其他图像的大小

thanksss

1 个答案:

答案 0 :(得分:0)

嗯,你的问题并不完全清楚,特别是因为它不清楚尺寸是图像或图像视图的大小,但听起来你想要UIViewContentModeCenter而不是UIViewContentModeScaleToFill 。这不会调整图像大小或拉伸图像,而是保持原始尺寸并将其置于图像视图中。