UIButton(iPad)上的PNG alpha频道

时间:2010-06-10 12:01:41

标签: ipad uibutton png alpha color-channel

我对可可触摸的iPad编程比较陌生。

我有一个带alpha通道的PNG。我想将它作为子视图覆盖在UIButton上,使其看起来好像Button周围有一个边框。 (Alpha通道是图像的中心,因此用户仍必须看透它。)

我似乎找不到正确显示Alpha通道的方法。该中心仍然显示为不透明的白色。

如果我不能那样做,我将如何围绕UIButton绘制边框?子类UIButton和override -drawRect?请记住,按钮是以编程方式(动态)添加的,以及边框。 (我不想删除按钮以添加边框。)alpha - 解决方案会更好,因为我可以在超视图(滚动视图)上覆盖边框图像,只需将偏移设置为对应按钮

1 个答案:

答案 0 :(得分:1)

你可以添加图像或设置图像到UIButton,但据我所知你不能设置整个事物的alpha蒙版(如果我正确理解你的问题)。所以一个标准的按钮是不可能的。但是你可以使用自定义类型按钮并将图像设置为你想要的任何图像,这应该会给你任何想要的效果。如果您需要稍后进行优化,可以为其添加更多子视图。

使用叠加层进行修改:

    UIButton *button = [UIButton buttonWithType....]; // your ordinary button here
    UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"youroverlay.png"]];
    // maybe adjust your overlay position here, e.g. imageView.center = .... (use bounds of button, not its frame), or the size directly
    [button addSubview:imageView];