gpt4 book ai didi

iOS 7 缩放在带有 AutoLayout 的 ScrollView 中不起作用,但在 iOS8/9 中起作用

转载 作者:可可西里 更新时间:2023-11-01 03:34:13 25 4
gpt4 key购买 nike

我已经使用 UIScrollView 制作了缩放图像的演示。我的 ViewController 只包含一张图片。问题是图像无法在 iO7 中放大(我已经在 iPhone4S-iOS7 上测试过)但在 iOS8/iOS9.
关于如何修复它的任何想法?

这是我的代码

#import "ViewController.h"

@interface ViewController ()<UIScrollViewDelegate>
@property (weak, nonatomic) IBOutlet UIScrollView *scrollview;
@property (weak, nonatomic) IBOutlet UIView *contentview;

@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
float minimumScale = [_contentview frame].size.width /[_scrollview frame].size.width;
_scrollview.maximumZoomScale = 5; //Change as per you need
_scrollview.minimumZoomScale = minimumScale; //Change as you need
_scrollview.zoomScale = minimumScale;
_scrollview.delegate =self;
_scrollview.clipsToBounds = YES;
}

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
return self.contentview;
}

@end

这是布局结构

enter image description here

Screen.png 约束 enter image description hereContentView 约束
enter image description here
ScrollView 约束 enter image description here

这是我的演示项目

https://drive.google.com/file/d/0B679aXO0SBmMeUVHTUdOcmxJSXM/view

最佳答案

在 iOS 7 中,高度和宽度 constraints 导致了这种情况。解决方法是,删除 iOS 7 的那些 constraints 并计算 minimumScale手动。在 IOS 8 及更高版本中,不要更改任何内容。

enter image description here

- (void)viewDidLoad {
[super viewDidLoad];

float minimumScale = 1;

if (floor(NSFoundationVersionNumber) < NSFoundationVersionNumber_iOS_8_0) {
[self.view removeConstraints:self.heightWidthConstraints];
minimumScale = self.scrollview.frame.size.width / self.imageView.image.size.width;
}

_scrollview.maximumZoomScale = 5; //Change as per you need
_scrollview.minimumZoomScale = minimumScale; //Change as you need
//_scrollview.zoomScale = minimumScale;
_scrollview.delegate = self;
//_scrollview.clipsToBounds = YES;

[self.scrollview setZoomScale:minimumScale animated:YES];
}

关于iOS 7 缩放在带有 AutoLayout 的 ScrollView 中不起作用,但在 iOS8/9 中起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35472709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com