2012-04-04 1 views
0

environnement: Xcode4.3.1, sdk5.1image de l'IOS ne peut pas être étirée

Je veux étirer seulement une partie de l'image, donc j'utiliser écrire le code comme ceci:

leftImage = [UIImage imageNamed:@"leftStyleBackground.png"]; 
UIEdgeInsets insets = UIEdgeInsetsMake(2, 14, 2, 2); 
if ([leftImage respondsToSelector:@selector(resizableImageWithCapInsets:)]) 
    leftImage = [leftImage resizableImageWithCapInsets:insets]; 
else { 
    leftImage = [leftImage stretchableImageWithLeftCapWidth:14 topCapHeight:2]; 
} 

Cependant, le résultat est ceci que l'image originale n'apparaît que de façon répétée pour remplir le cadre d'uiimageview.

Si j'utilise - stretchableImageWithLeftCapWidth: méthode topCapHeight: l'image peut être étirée correctement.

est une idée de pourquoi la nouvelle méthode dans ios5 ne peut pas fonctionner?

+0

jamais trouver une solution à cela? Je vois la même chose. – jimmyg

Répondre

1

resizableImageWithCapInsets: applique la zone d'image.

Si vous avez besoin d'étirement:

Pour 6.0 et au-dessus - Utilisation: resizableImageWithCapInsets:resizingMode: avec resizingMode ensemble à UIImageResizingModeStretch.

Avant 6.0 - Utilisation: stretchableImageWithLeftCapWidth:topCapHeight:

Questions connexes