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

解決策を見つけましたが、まだ理由がわかりません。XCode を 4.5.1 から 4.5.2 にアップグレードしましたが、まだ何もありません。

古いバージョンの xcode (4.5.1 より古い) で作成された 1 つの古いプロジェクトを、まったく同じコードで 4.5.2 を使用して複製したところ、正常に動作しました....

非常に奇妙です..解決策を見つけるのに何時間も費やしたのは残念です...

于 2013-01-14T00:43:55.107 に答える
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 に答える