0

我有一个与这篇文章类似的问题(UIButton: Add gradient layer and title is not displayed – how to fix?)但他的解决方案对我不起作用。首先,我对 MonoTouch 有点陌生,但从来没有定制过开箱即用的控件。

我正在尝试向我的按钮添加渐变,但是当我这样做时,渐变看起来完全符合我的要求,但文本被覆盖(我将渐变的不透明度设置为 0.5 以进行测试)。我有一个故事板,我在其中直观地设计了界面,但想调整一些东西。

这是我的代码:

var gradient = new CAGradientLayer();
gradient.Frame = getStartedButton.Layer.Bounds;
gradient.Colors = new MonoTouch.CoreGraphics.CGColor[]
{
    UIColor.FromRGB (23, 55, 94).CGColor,
    UIColor.FromRGB (33, 81, 141).CGColor
};

getStartedButton.Layer.AddSublayer(gradient);
getStartedButton.Layer.CornerRadius = 10;
getStartedButton.Layer.BorderColor = UIColor.White.CGColor;
getStartedButton.Layer.BorderWidth = 1;

getStartedButton.VerticalAlignment = UIControlContentVerticalAlignment.Center;
getStartedButton.Font = UIFont.FromName("Helvetica", 12);
getStartedButton.SetTitleColor(UIColor.White, UIControlState.Normal);

getStartedButton.SetTitle("Get Started", UIControlState.Normal);
4

1 回答 1

1

尴尬,但这只是在 XCode 中将按钮类型更改为自定义的问题。

于 2013-03-22T00:26:33.883 回答