UIImageView
您可以通过将s设置contentMode
为其中任何一个来仅显示图像的一部分(顶部、底部、左侧或右侧)
UIViewContentModeTop
UIViewContentModeBottom
UIViewContentModeLeft
UIViewContentModeRight
相应地设置clipsToBounds = YES
和更改其框架。因为frame
是动画属性,所以这种组合将允许您以动画方式仅显示图像的一部分。
例如:如果您只想显示距底部 20 个点,imageView.contentMode = UIViewContentModeBottom;
请将其frame
s 高度设置为20
。UIImageView
无论您设置什么框架,图像都将保持在底部边缘。
见示例代码:
UIImage *image = [UIImage imageNamed:@"myImage"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
imageView.frame = CGRectMake(0, 0, 0, 40);
imageView.contentMode = UIViewContentModeLeft;
imageView.clipsToBounds = YES;
[self.view addSubview:imageView];
CGRect finalFrame = imageView.frame;
finalFrame.size.width = 40;
[UIView animateWithDuration:1.0 animations:^{
imageView.frame = finalFrame;
}];
此代码通过从 0 大小 40 扩展其大小来为图像设置动画。