1

我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。

在此图像中,导航栏上的按钮对于导航栏的背景是半透明的。

在左侧

在第一幅图中,导航栏上的按钮对于导航栏的背景是半透明的。

在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。

4

3 回答 3

4

试试这个:

这将创建一个透明按钮:

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];
于 2013-01-29T14:57:40.123 回答
2

最简单的方法是为按钮创建一个图像资源。

图像将有一个边框和一个清晰的中间。

然后使用图像作为按钮图像。

于 2013-01-29T14:58:32.797 回答
0

我可以推荐看看FTWButton。它是一个超级可定制的 UIControl,它复制了 UIButton 并在外观方面提供了疯狂的多功能性。它在控制状态之间也有一些不错的动画。

它带有一些内置样式,但您可以根据自己的喜好完全自定义按钮。

我与该项目没有任何关系,我只是将它用于我自己的一个项目并且喜欢它:)

于 2013-01-29T15:20:38.410 回答