2010-04-01 16 views
5

Tengo un UITextView y un WebView uno al lado del otro y me gustaría agregar una sombra paralela a ambos. Esta es una aplicación de iPad, por lo que giran, por lo tanto, un ImageView debajo de ellos probablemente no funcionaría. ¿Algunas ideas?Agregar sombra paralela a UIWebView y UITextView

Respuesta

12

UIView tiene CALayers, que tienen un soporte de sombra integrado. Pruebe estas propiedades:

view.layer.shadowColor 
view.layer.shadowOffset 
view.layer.shadowOpacity 
view.layer.shadowRadius 

Eso le puede proporcionar lo que necesita con bastante rapidez. Es posible que necesite importar # <QuartzCore/QuartzCore.h> para que el compilador comprenda lo que está sucediendo.

+0

fue capaz de entenderlo. ¡Gracias! – user288225

+4

¿Desea publicar su solución? La respuesta aceptada no parece funcionar para mí tal como está escrita. – typeoneerror

+1

¡fantástico! ¡Si fueras una mujer, te propondría ahora! :-) gracias! – SpaceDog

7

la solución sería como

[myTextBox.layer setShadowColor:[[UIColor blackColor] CGColor]]; 
[myTextBox.layer setShadowOffset:CGSizeMake(1.0, 1.0)]; 
[myTextBox.layer setShadowOpacity:1.0]; 
[myTextBox.layer setShadowRadius:0.3]; 

pero esto sólo funciona para OS 3.2 en adelante.

1

Agregaría una vista que se encuentra detrás del campo de texto, y aplicaré los efectos de sombra a eso. De esta forma, la sombra no se mueve con el contenido.

2

He aquí la versión rápida:

func applyDropShadow() { 
    textView.layer.shadowColor = UIColor.blackColor().CGColor 
    textView.layer.shadowOffset = CGSizeMake(3, 3) 
    textView.layer.shadowOpacity = 0.7 
    textView.layer.shadowRadius = 8.0 
    textView.clipsToBounds = false 

} 
+0

Gracias por esto, sin clipsToBounds, la sombra no apareció para mí. – BeneGal

Cuestiones relacionadas