2010-02-01 16 views
0

J'ai essayé de comprendre comment dessiner une ombre pour un UIView qui a été ajouté à l'intérieur d'un UIView avec addSubview.UIVvue à l'intérieur de UIView avec Shadow?

J'ai recherché en ligne et lu les documents, mais les docs d'Apple dessinent simplement de nouvelles formes comme indiqué ci-dessous. Je veux utiliser le Core Graphics pour ajouter une ombre à l'UIView, mais je ne sais pas comment faire cela directement à un UIView.

CGContextRef myContext = UIGraphicsGetCurrentContext(); 
//CGContextRef myContext = myCGREF; 

    CGSize   myShadowOffset = CGSizeMake (10, 10);// 2 

    CGContextSetShadow (myContext, myShadowOffset, 0); // 3 

    CGContextBeginTransparencyLayer (myContext, NULL);// 4 

    // Your drawing code here// 5 

    CGContextSetRGBFillColor (myContext, 0, 1, 0, 1); 

    CGContextFillRect (myContext, CGRectMake (a_view.frame.origin.x, a_view.frame.origin.y , wd, ht)); 

    CGContextEndTransparencyLayer (myContext);// 6 

Je sais que je devrais mettre cela dans la méthode SuperView drawRect, mais je ne sais pas comment faire si elle ajoute une ombre aux vues j'ajouter à addSubview.

Merci!

Répondre

0

probablement trop tard pour une réponse ...

Mais vous pouvez tout simplement passer le contexte graphique à la vue des enfants; soit comme paramètre lors de la création de l'UIView, soit via un protocole que vous interrogerez dans la fonction drawRect de l'enfant