0

1024 x 1 ピクセルの UIImage があります。この画像は、1024 x 50 ピクセルの UIImageView を満たすために引き伸ばす必要があります。

このイメージは最初に NSArray にロードされ、次にこれを実行します。

 UIImage *image = nil;

    if ([UIImage respondsToSelector:@selector(resizableImageWithCapInsets:resizingMode:)]) { // ios >= 6.0
        image = [[myImages objectAtIndex:0] resizableImageWithCapInsets:UIEdgeInsetsZero
resizingMode:UIImageResizingModeStretch];
    } else {
        image = [[myImages objectAtIndex:0] stretchableImageWithLeftCapWidth:0.0f topCapHeight:0.0f];
    }

これは iOS 6 では問題なく動作しますが、iOS 5 ではうまく動作しません。なぜですか?

つまり、画像は美しく伸び、iOS 6 では UIImageView を埋めますが、5 ではそうではありません。

UIImageView は、次のパラメーターで設定されます。

UIImageView myImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,1024,50)];
[myImageView setContentMode:UIViewContentModeScaleToFill | UIViewContentModeRedraw];
[myImageView setImage:image];
4

2 に答える 2

0
[[myImages objectAtIndex:0] stretchableImageWithLeftCapWidth:0.0f topCapHeight:0.0f]]

これは iOS 5 では非推奨の方法です。

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/DeprecationAppendix/AppendixADeprecatedAPI.html

それはあなたを助けるかもしれません。

于 2013-05-04T17:04:10.357 に答える