【发布时间】:2013-01-13 04:35:28
【问题描述】:
我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。
在第一张图片中,导航栏上的按钮对于导航栏的背景是半透明的。
在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。
【问题讨论】:
标签: iphone ios objective-c uibutton transparency
我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。
在第一张图片中,导航栏上的按钮对于导航栏的背景是半透明的。
在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。
【问题讨论】:
标签: iphone ios objective-c uibutton transparency
试试这个:
这将创建一个透明按钮:
UIButton *button=[UIButton buttonWithType:UIButtonTypeCustom];
button.frame GRectMake(x, y, w, h);
[button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
[button setTitle:@"Button" forState:UIControlStateNormal];
button.backgroundColor=[UIColor clearColor];
[button setTitleColor:[UIColor colorWithRed:0.3 green:0.1 blue:0.4 alpha:1.0] forState:UIControlStateNormal];
[self.view addSubview:btn];
现在是边框:
[[button layer] setBorderWidth:2.0f];
[[button layer] setBorderColor:[UIColor greenColor].CGColor];
【讨论】:
最简单的方法是为按钮创建一个图片资源。
图像将有一个边框和一个清晰的中间。
然后将图片作为按钮图片。
【讨论】:
resizableImageWithCapInsets:方法创建scale9-grid图片
我建议您看看FTWButton。它是一个超级可定制的 UIControl,它复制了 UIButton 并在外观方面提供了疯狂的多功能性。它在控制状态之间也有一些不错的动画。
它带有一些内置样式,但您可以根据自己的喜好完全自定义按钮。
我与这个项目没有任何关系,我只是将它用于我自己的一个项目并喜欢它:)
【讨论】: