如何使UIButton背景透明?

Tat*_*tat 25 iphone uibutton

我尝试使用透明的png作为背景,但没有成功.我该如何解决?太赫兹.

Din*_*hNS 38

在"检查器"窗口("界面"构建器)中将"类型"更改为"自定义"对我有用.


Dav*_*d H 21

要创建透明按钮(不使用图像):

- (void)viewDidLoad
{
    [super viewDidLoad];

    CALayer *layer = <your button>.layer;
    layer.backgroundColor = [[UIColor clearColor] CGColor];
    layer.borderColor = [[UIColor darkGrayColor] CGColor];
    layer.cornerRadius = 8.0f;
    layer.borderWidth = 1.0f;
}
Run Code Online (Sandbox Code Playgroud)

  • 这很可爱.记住#import <QuartzCore/QuartzCore.h> (7认同)

小智 7

这也是一个很好的一个:

[button.layer setBackgroundColor:[UIColor colorWithWhite:0.0 alpha:0.5].CGColor];
Run Code Online (Sandbox Code Playgroud)


kra*_*nyk -2

将按钮的类型更改为 IB 中的自定义类型 - 它默认将背景设置为clearColor。

如果您必须在背景透明之前拥有圆角矩形 UIButton,那么我想将其背景颜色更改为clearColor 将无济于事。那么我建议:

  1. 将其从视图中删除并替换为具有透明背景的其他按钮,例如
     UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(50, 50, 50, 50)];
    [button setTitle:@"Title" forState:UIControlStateNormal];
    Run Code Online (Sandbox Code Playgroud)
  2. 不要使用苹果的 UIButton,子类化 UIControl 并自己绘制:)