0

我无法理解......它以前用于我使用旧版 IOS 框架制作的其他应用程序中

检查下面的代码:

如果我将 contentMode 更改为 Left 它会显示图像...

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
{
    IBOutlet UIScrollView* scrBook;
}

@property (nonatomic, retain) IBOutlet UIScrollView* scrBook;

@end



@synthesize scrBook;

- (void)viewDidLoad
{
    [super viewDidLoad];

    CGRect frame;
    frame.origin.x = 0;
    frame.origin.y = 0;
    frame.size = self.scrBook.frame.size;

    UIImageView *subview = [[UIImageView alloc] initWithFrame:frame];

    //subview.contentMode = UIViewContentModeLeft;
    subview.contentMode = UIViewContentModeScaleAspectFit;

    UIImage *currentImage = [UIImage alloc];
    currentImage = [UIImage imageNamed:@"model.jpg"];

    subview.image = currentImage;

    [self.scrBook addSubview:subview];

    self.scrBook.contentSize
    = CGSizeMake(self.scrBook.frame.size.width * 1, self.scrBook.frame.size.height);
}

UIViewContentModeLeft:

UIViewContentModeLeft

UIViewContentModeScaleAspectFit:

UIViewContentModeScaleAspectFit

更新:我最后一次尝试是将 xcode 更新到 4.5.2,但它也不起作用,令人沮丧......

4

2 回答 2

0

不是您问题的答案,只是一些优化...

UIImage *currentImage = [UIImage alloc];
currentImage = [UIImage imageNamed:@"model.jpg"];

不需要第一行,只需执行以下操作:

UIImage *currentImage = [UIImage imageNamed:@"model.jpg"];

还,

self.scrBook.contentSize
= CGSizeMake(self.scrBook.frame.size.width * 1, self.scrBook.frame.size.height);

只能...

self.scrBook.contentSize = self.srcBook.frame.size;
于 2013-01-13T08:52:15.280 回答
0

我找到了解决方案,但仍然不知道原因,我将 XCode 升级到 4.5.1 到 4.5.2 仍然没有。

我使用 4.5.2 和完全相同的代码复制了一个在旧版本的 xcode(早于 4.5.1)中制作的旧项目,它运行良好....

很奇怪..我感觉很糟糕,我花了这么多小时试图找到解决方案......

于 2013-01-14T00:43:55.107 回答