我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。
在第一幅图中,导航栏上的按钮对于导航栏的背景是半透明的。
在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。
我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。
在第一幅图中,导航栏上的按钮对于导航栏的背景是半透明的。
在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。
试试这个:
这将创建一个透明按钮:
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];
最简单的方法是为按钮创建一个图像资源。
图像将有一个边框和一个清晰的中间。
然后使用图像作为按钮图像。
我可以推荐看看FTWButton。它是一个超级可定制的 UIControl,它复制了 UIButton 并在外观方面提供了疯狂的多功能性。它在控制状态之间也有一些不错的动画。
它带有一些内置样式,但您可以根据自己的喜好完全自定义按钮。
我与该项目没有任何关系,我只是将它用于我自己的一个项目并且喜欢它:)