recherche

Maison  >  Questions et réponses  >  le corps du texte

ios - iphone Lors de l'utilisation de UIGraphicsGetCurrentContext dans drawRect pour dessiner un rectangle, y a-t-il un excès de 1 pixel à l'extérieur de la bordure ?

Le code est le suivant

-(void) drawRect:(CGRect)rect{
//CGContextRef context = UIGraphicsGetCurrentContext();
//CGContextSetRGBFillColor(context, 0.0, 0.0, 0.0, 0.2);
[[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.2]setFill];
CGRect grayRect = self.frame;
UIRectFill(grayRect);

CGRect cropRect = _intersectionRect;
CGRect intersectionRect = CGRectIntersection(cropRect, grayRect);
[[UIColor clearColor]setFill];
UIRectFill(intersectionRect);
}

Dans la démo du projet blank, tout va bien

Mais dans mon propre projet, il y a 1px supplémentaire et des bordures avec une transparence différente. Comment résoudre ce problème ?

我想大声告诉你我想大声告诉你2827 Il y a quelques jours1043

répondre à tous(1)je répondrai

  • 怪我咯

    怪我咯2017-05-16 13:20:51

    Problème résolu, les valeurs des deux rects doivent être définies sur int au lieu de float.

    répondre
    0
  • Annulerrépondre