2009-06-08 7 views
0

Je voudrais savoir comment appliquer le dégradé et le rayon d'angle en flexion.Comment appliquer gradient est flex? Et rayon de coin

Est-ce que css est le seul moyen? Je veux dire que je veux utiliser plus de propriétés flex pour que cela se produise

Quelqu'un peut-il donner un exemple de classe ou de code pour cela?

Merci

Répondre

0

tout d'abord, comme vous l'avez mentionné, ces propriétés peuvent être personnalisées par CSS (header-colors, background-gradient-colors, highlight-alphas, etc.)

Deuxièmement, vous pouvez utiliser l'API de dessin de Flash pour créer votre propres formes dans les composants personnalisés (ou étendue), mais il est beaucoup plus délicate tâche:

package test 
{ 
import mx.core.UIComponent; 
import flash.display.Graphics; 
import flash.display.GradientType; 

public class DrawingTest extends UIComponent 
{ 
    public function DrawingTest() 
    { 
     super(); 
    } 

    override protected function updateDisplayList (unscaledWidth:Number, unscaledHeight:Number):void 
    { 
     // you'll want to track the actual changes and redraw only in case if width, height or some other 
     // significant property changes 
     trace(unscaledWidth, unscaledHeight); 
     var g:Graphics = graphics; 
     // it's likely you want to make roundRadius and gradient parameters as styles of the component 
     // or at least it's parameters. 
     var roundRadius:Number = 30; 
     g.clear(); 
     g.beginGradientFill(GradientType.LINEAR, [0x0, 0xFFFFFF], [0.5, 0.7], [0, 255]); 
     g.drawRoundRect(0, 0, unscaledWidth, unscaledHeight, roundRadius, roundRadius); 
     g.endFill(); 
    } 

} 
} 

Utilisation (ajoutez xmlns:test="test.*" aux propriétés des composants de niveau supérieur)

<test:DrawingTest width="250" height="400" /> 

Il est bon de jeter un oeil à Graphics class documentation pour plus d'info:

Questions connexes