2012-10-26 19 views
5

ho il seguente codice:UIImageView Colore bordo

UIColor *borderColor = [UIColor colorWithRed:182 green:10 blue:96 alpha:1.0]; 
[viewImage.layer setBorderColor:borderColor.CGColor]; 
[viewImage.layer setBorderWidth:3.0]; 
[productView addSubview:viewImage]; 

dove viewImage è il mio UIImageView e productView è il mio UIView.

Voglio ottenere questo colore enter image description here, ma tutto quello che sto ottenendo è questo colore enter image description here. Ho provato diversi valori e tutti i colori che ottengo sono bianco, rosso, nero, giallo o blu. Non riesco a ottenere altri colori, non importa quali valori inserisco. Ho provato colorWithHue: Saturation: Brightness e ho lo stesso problema.

Lo sto usando su iOS 6 SDK.

Cosa sto facendo male e come posso risolvere il problema?

risposta

6

I valori per rosso verde e blu devono essere tra 0.0 e 1.0. Da UIColor doc:

I valori inferiori a 0.0 sono interpretati come 0.0 ei valori superiori a 1.0 sono interpretati come 1.0.

+0

Dannazione. Stupido errore. Ha senso. Grazie. – BlueChips23

+0

di sicuro. se vuoi usare i valori rgb, penso che puoi semplicemente dividere i valori che hai per 255 – geraldWilliam

1

Prova questa

UIColor *color = [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1]; 
16
#import <QuartzCore/QuartzCore.h> 

[imageView.layer setBorderColor: [[UIColor blackColor] CGColor]]; 
[imageView.layer setBorderWidth: 2.0]; 
0

Swift versione 2.11 (Xcode 7.2.1):

let borderColor = UIColor(red:0, green:0, blue:0, alpha:1.0) 
viewImage.layer.borderColor = borderColor.CGColor 
viewImage.layer.borderWidth = 2.0