J'ai un problème étrange en utilisant UIButtons
, tapez custom
. Je place 4 de ces boutons sur un UIScrollview
, en faisant tourner chaque bouton d'un angle aléatoire en utilisant CGAffineTransform
. Maintenant, il semble que les boutons eux-mêmes changent de taille en fonction de l'angle de rotation. Ne pas définir le cadre de cookbookViewButton - définissez les limites.CGAffineTransform: rotation sur UIButton redimensionne l'image du bouton
UIGraphicsBeginImageContext(tempCtxSize);
[cookbookImage drawInRect:CGRectMake(imgOffsetX, imgOffsetY+frmOffsetY, cookbookImage.size.width, cookbookImage.size.height)];
[cookbookFrame drawInRect:CGRectMake(0.0f, frmOffsetY, cookbookFrame.size.width, cookbookFrame.size.height)];
UIImage *combinedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
…
UIButton *cookbookViewButton = [UIButton buttonWithType:UIButtonTypeCustom];
[cookbookViewButton setFrame:CGRectMake(0.0f, 0.0f, combinedImage.size.width, combinedImage.size.height)];
[cookbookViewButton setBackgroundColor:[UIColor clearColor]];
[cookbookViewButton setBackgroundImage:combinedImage forState:UIControlStateNormal];
CGAffineTransform rotation = [cookbookViewButton transform];
rotation = CGAffineTransformRotate(rotation, angle); // some random angle
[cookbookViewButton setTransform:rotation];