2012-06-05 61 views
0

我试图添加边框渐变按钮:MonoTouch的添加边框渐变

var c = bdPencil.ColorMain; 
Context.SetLineWidth(bdPencil.Width); 
Context.SetStrokeColor(c.R, c.G, c.B, c.A); 
Context.Clip(); 
CGColorSpace colorSpace = CGColorSpace.CreateDeviceRGB(); 
CGGradient gradient = new CGGradient(colorSpace, colors, 
new float[]{ 0, 1 }); 
Context.DrawLinearGradient(gradient, new PointF((float)r.CenterX, (float)r.Top), new PointF((float)r.CenterX, (float)r.Bottom), 
CGGradientDrawingOptions.DrawsAfterEndLocation); 
Context.RestoreState(); 

,它是行不通的。

var c = bdPencil.ColorMain; 
    Context.SetLineWidth(bdPencil.Width); 
    Context.SetStrokeColor(c.R, c.G, c.B, c.A); 
    var g = bgPencil.ColorMain; 
    Context.SetFillColor(g.R, g.G, g.B, g.A); 
    Context.DrawPath(CGPathDrawingMode.FillStroke); 

当我试图描边路径的DrawLinearGradinet没有任何反应后:如果我做同样的事情用纯色 一切工作。 我想我需要像GradientStroke,但我找不到它。

任何想法,为什么?

回答

1

的错误是,我试图做与上下文的一切。 我画了一条路径,抚摸它,然后我画了渐变,它的工作。