Ios7 UIScrollView仅垂直滚动

Ios7 UIScrollView仅垂直滚动,ios7,uiscrollview,scroll,uiimageview,zooming,Ios7,Uiscrollview,Scroll,Uiimageview,Zooming,我试图在UIImageView上实现滚动和缩放,但它只是垂直滚动 它可以缩放、垂直滚动,所有内容都在InterfaceBuilder中连接。InterfaceBuilder中没有约束 有人能帮我理解为什么吗 谢谢 // // O_GTab2ViewController3.m // Safety Moment // // Created by Fabio Lanza on 3/2/14. // Copyright (c) 2014 Fabio Lanza. All rights reser

我试图在UIImageView上实现滚动和缩放,但它只是垂直滚动

它可以缩放、垂直滚动,所有内容都在InterfaceBuilder中连接。InterfaceBuilder中没有约束

有人能帮我理解为什么吗

谢谢

//
//  O_GTab2ViewController3.m
//  Safety Moment
//
//  Created by Fabio Lanza on 3/2/14.
//  Copyright (c) 2014 Fabio Lanza. All rights reserved.
//

#import "O_GTab2ViewController3.h"

@interface O_GTab2ViewController3 () <UIScrollViewDelegate>
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;
@property (weak, nonatomic) IBOutlet UIImageView *imageView;
@property (weak, nonatomic) IBOutlet UIImage *image;

@end

@implementation O_GTab2ViewController3

@synthesize imageName;



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

    scrollView.minimumZoomScale = 0.2;
    scrollView.maximumZoomScale = 2.0;

    scrollView.contentSize = self.imageView.image.size;

}

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

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.image = [UIImage imageNamed:imageName];
    self.imageView.image = self.image;
    self.imageView.contentMode = UIViewContentModeTopLeft;
    [self.imageView sizeToFit];

    self.scrollView.frame = CGRectMake(0, 64, 320, 455);
    self.scrollView.contentSize = self.imageView.image.size;
    self.scrollView.delegate = self;

//    [self.view addSubview:self.scrollView];

    [self.scrollView addSubview:self.imageView];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
//
//ogtab2;viewcontroller3.m
//安全时刻
//
//由法比奥·兰扎于2014年3月2日创作。
//版权所有(c)2014法比奥·兰扎。版权所有。
//
#导入“O_GTab2ViewController3.h”
@接口O_GTab2ViewController3()
@属性(弱的、非原子的)IBUIScrollView*scrollView;
@属性(弱、非原子)IBUIImageView*imageView;
@性质(弱,非原子)IBUIImage*image;
@结束
@实现O_GTab2ViewController3
@综合图像名称;
-(void)setScrollView:(UIScrollView*)滚动视图{
scrollView.minimumZoomScale=0.2;
scrollView.maximumZoomScale=2.0;
scrollView.contentSize=self.imageView.image.size;
}
-(UIView*)视图用于缩放CrollView:(UICrollView*)滚动视图{
返回self.imageView;
}
-(id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil
{
self=[super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
如果(自我){
//自定义初始化
}
回归自我;
}
-(无效)viewDidLoad
{
[超级视图下载];
//加载视图后执行任何其他设置。
self.image=[UIImage imageName:imageName];
self.imageView.image=self.image;
self.imageView.contentMode=UIViewContentModeTopLeft;
[self.imageView sizeToFit];
self.scrollView.frame=CGRectMake(0,64,320,455);
self.scrollView.contentSize=self.imageView.image.size;
self.scrollView.delegate=self;
//[self.view addSubview:self.scrollView];
[self.scrollView addSubview:self.imageView];
}
-(无效)未收到记忆警告
{
[超级记忆警告];
//处置所有可以重新创建的资源。
}
@结束

一个scrollview是否会滚动取决于它的contentSize和frame。也就是说,如果你的contentSize大于frame,它会滚动

我检查了你的代码:

scrollView.contentSize=self.imageView.image.size

self.scrollView.frame=CGRectMake(0,64,320,455)

也许,imageView.size.height>455,因此它将垂直滚动

但是,imageView.size.width小于320,因此它不会水平划船

要水平滚动,应设置contentSize,width>320