如何绕一个button的angular落

我有一个矩形图像(jpg),并希望用它来填充xcode中带有圆angular的button的背景。

我写了以下内容:

UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain]; CGRect frame = CGRectMake(x, y, cardWidth, cardHeight); button.frame = frame; [button setBackgroundImage:backImage forState:UIControlStateNormal]; 

但是,我用这种方法得到的button没有四舍五入:它是一个简单的矩形,看起来完全像我的原始图像。 我怎样才能得到一个圆angular的图像来代表我的button?

谢谢!

我想我得到了你的问题,我试着用UITextArea下面的解决scheme,我想这也适用于UIButton。

首先将这个文件导入到你的.m文件中 –

 #import <QuartzCore/QuartzCore.h> 

然后在你的loadView方法中添加如下几行

  yourButton.layer.cornerRadius = 10; // this value vary as per your desire yourButton.clipsToBounds = YES; 

希望这对你有用,如果是的话,沟通。

你可以通过这个RunTime Attributes来实现

在这里输入图像说明

我们可以自定义button.just看附加的截图。

请注意:

在运行时属性改变边框的颜色遵循这个指令

  1. 创buildCALayer的类别类

  2. 在h文件中

     @property(nonatomic, assign) UIColor* borderIBColor; 
  3. 在m文件中:

     -(void)setBorderIBColor:(UIColor*)color { self.borderColor = color.CGColor; } -(UIColor*)borderIBColor { return [UIColor colorWithCGColor:self.borderColor]; } 

现在开始设置边框颜色检查截图

更新了答案

谢谢

你可能想看看我的库叫做DCKit 。 它写在最新版本的Swift上

您可以直接从“界面”构build器制作圆angularbutton/文本字段:

DCKit:圆角按钮

它还有许多其他很酷的function,如带有validation的文本字段,带边框的控件,虚线边框,圆圈和发型视图等。

如果您的现有项目不存在,请导入QuartCore框架 ,然后在viewcontroller.m中导入#import <QuartzCore/QuartzCore.h>

 UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect]]; CGRect frame = CGRectMake(x, y, width, height); // set values as per your requirement button.layer.cornerRadius = 10; button.clipsToBounds = YES; 

推到极限转angular半径上去得到一个圆圈:

  self.btnFoldButton.layer.cornerRadius = self.btnFoldButton.frame.height/2.0; 

在这里输入图像说明

如果button框是一个正方形,那么frame.height或frame.width无关紧要。 否则使用两者中最大的一个。

 UIButton* closeBtn = [[UIButton alloc] initWithFrame:CGRectMake(10, 50, 90, 35)]; //Customise this button as you wish then closeBtn.layer.cornerRadius = 10; closeBtn.layer.masksToBounds = YES;//Important 

如果你想要一个圆angular只有一个angular落或两个angular落等…阅读此文章:

[ObjC] – 带圆angular的UIButton – http://goo.gl/kfzvKP

这是一个XIB / Storyboard子类。 导入并设置边界,无需编写代码。

一个替代的答案,也设置边框(使其更像一个button)在这里… 如何设置自定义typesUIButton的矩形边框

首先设置宽度= 100和高度= 100的button

 YourBtn1.layer.cornerRadius=YourBtn1.Frame.size.width/2; YourBtn1.layer.borderColor=[uicolor blackColor].CGColor; YourBtn1.layer.borderWidth=1.0f; 

对于Swift:

 button.layer.cornerRadius = 10.0 

更新了Swift 3:

下面的代码使用UIButtonangular落:

  yourButtonOutletName.layer.cornerRadius = 0.3 * yourButtonOutletName.frame.size.height