Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 滚动视图中的UIImage太大_Ios_Objective C_Uiimage - Fatal编程技术网

Ios 滚动视图中的UIImage太大

Ios 滚动视图中的UIImage太大,ios,objective-c,uiimage,Ios,Objective C,Uiimage,我试图在滚动视图中显示UIImage。该图像的大小比scrollview大得多,因此它只显示图像的左上角。然后,我可以缩放/重新排列图像,使其更适合,但我希望它显示整个图像,居中并适合内部。如果用户愿意,他可以放大,但默认情况下应该显示整个图像 这是我的代码(它下载图像): 同样,它只显示图像的左上角。我想让它显示整个图像 谢谢:) 在此图像中,您可以看到一个小的滚动视图(该正方形是滚动视图的大小),其中包含一个非常大的图像(高度为1280,滚动视图仅为100)。您需要做的唯一一件事是将图像的约

我试图在滚动视图中显示UIImage。该图像的大小比scrollview大得多,因此它只显示图像的左上角。然后,我可以缩放/重新排列图像,使其更适合,但我希望它显示整个图像,居中并适合内部。如果用户愿意,他可以放大,但默认情况下应该显示整个图像

这是我的代码(它下载图像):

同样,它只显示图像的左上角。我想让它显示整个图像

谢谢:)

在此图像中,您可以看到一个小的滚动视图(该正方形是滚动视图的大小),其中包含一个非常大的图像(高度为1280,滚动视图仅为100)。您需要做的唯一一件事是将图像的约束添加到其superview(scrollView),在我的示例中,我添加了所有0(顶部、前导、尾部和底部),并且imageView模式为居中。当然,您需要将scrollview中的约束添加到其superView,在本例中是视图

如果还需要以编程方式添加imageView,如果无法使用插座,则可以对代码进行以下更改,但我强烈建议您使用故事板解决方案:

imgView = [[UIImageView alloc] initWithImage:trackImg];
[self.scrImageViewer addSubview:imgView];
[imgView setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.scrImageViewer addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[view]|" options:0 metrics:nil views:@{ @"view": imgView }]];
[self.scrImageViewer addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[view]|" options:0 metrics:nil views:@{ @"view": imgView }]];
[self.view layoutIfNeeded];

是否尝试过imgView.contentMode=UIViewContentModeScaleAspectFit?是否尝试过在不硬编码框架的情况下将imageView添加到scrollView,然后添加约束?如果添加具有正确约束的大图像(大于scrollView框架),scrollView将自行计算内容大小。。没有代码要求完美,这让我走得更远。现在它显示了整个图像,但现在不允许我缩放?看看这个:
imgView = [[UIImageView alloc] initWithImage:trackImg];
[self.scrImageViewer addSubview:imgView];
[imgView setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.scrImageViewer addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[view]|" options:0 metrics:nil views:@{ @"view": imgView }]];
[self.scrImageViewer addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[view]|" options:0 metrics:nil views:@{ @"view": imgView }]];
[self.view layoutIfNeeded];