`

iOS 给UILabel 或者其它控件设置自定义的圆角(可设置指定的角)

    博客分类:
  • ios
 
阅读更多

声明方法:

/**

 指定圆角并带有颜色边框

 view:需要添加效果的视图

 corner:圆角位置

 width:边框宽度

 color:边框颜色

 */

+ (void)setupView:(UIView *)view

     corners:(UIRectCorner)corner

cornerRadius:(CGFloat)cornerRadius

 borderWidth:(CGFloat)width

      borderColor:(UIColor *)color;

实现方法

/**

 指定圆角并带有颜色边框

 view:需要添加效果的视图

 corner:圆角位置

 width:边框宽度

 color:边框颜色

 */

+ (void)setupView:(UIView *)view

          corners:(UIRectCorner)corner

     cornerRadius:(CGFloat)cornerRadius

      borderWidth:(CGFloat)width

      borderColor:(UIColor *)color {

    

    CAShapeLayer *maskLayer = [CAShapeLayerlayer];

    maskLayer.frame = CGRectMake(0, 0, view.frame.size.width, view.frame.size.height);

    // 边框

    CAShapeLayer *borderLayer = [CAShapeLayerlayer];

    borderLayer.frame = CGRectMake(0, 0, view.frame.size.width, view.frame.size.height);

    borderLayer.lineWidth = width;

    borderLayer.strokeColor = color.CGColor;

    borderLayer.fillColor = [UIColorclearColor].CGColor;

    // 指定圆角

    UIBezierPath *bezierPath = [UIBezierPathbezierPathWithRoundedRect:view.bounds

    byRoundingCorners:corner

          cornerRadii:CGSizeMake(cornerRadius, cornerRadius)];

    

    maskLayer.path = bezierPath.CGPath;

    borderLayer.path = bezierPath.CGPath;

 

    [view.layer insertSublayer:borderLayer atIndex:0];

    [view.layer setMask:maskLayer];

}

分享到:
评论

相关推荐

    IOS控件阴影和圆角

    通过以上的知识,我们可以实现类似UILabel的控件具有圆角和阴影的效果,同时其他控件如UIButton、UIImageView等也可以使用相同的方法进行设置。在实践中,开发者需要根据具体需求灵活运用这些技巧,创建出符合设计...

    iOS设置可选择圆角方向的控件圆角

    这篇文章将详细介绍如何在iOS中实现可选择圆角方向的控件圆角设置。 首先,让我们了解两种常见的设置圆角的方法: 1. **通过设置layer的cornerRadius属性**: 这是最基础的设置圆角的方式,通过修改视图(UIView...

    IOS 使用XIB 自定义View

    在iOS开发中,自定义视图(View)是常见的需求,可以满足特定界面设计和功能实现。本篇文章将深入探讨如何使用XIB(XML Interface Builder)来创建和使用自定义视图。 首先,XIB是一种XML格式的文件,用于描述用户...

    iOS基于 UILabel实现文字添加描边功能

    在iOS开发中,UI设计是用户体验的关键组成部分,而UILabel作为常用的文字展示控件,有时我们需要为其添加一些视觉效果,比如文字描边。本篇将详细讲解如何基于UILabel在iOS平台上实现文字描边功能。 首先,要实现...

    ios-自定义时分秒背景色的倒计时.zip

    通过设置`label.font = [UIFont systemFontOfSize:fontSize]`或者指定特定的字体名称和大小,我们可以自由调整时间显示的字体样式和大小。 至于圆角大小的设置,这涉及到UI视图的边框和圆角处理。使用`layer....

    ios-对OC控件设置的链式封装.zip

    3. **可扩展性**:`CVConfiguration`设计为模块化,开发者可以轻松地添加新的链式方法来支持更多控件类型或自定义属性,从而增强项目的灵活性。 4. **减少错误**:链式调用使得每个属性设置独立,减少了因多行设置...

    ios新手开发——toast提示和旋转图片加载框 - iOS知识库1

    文章首先介绍了 Toast 提示的基础控件的封装,继承自UILabel,添加了屏幕宽高、圆角、时间等属性,并提供了多种显示方式的方法。然后,文章还介绍了旋转图片加载框的实现方法,使用了B9:aILR的封装,调整显示位置和...

    非常精致的iphone自定义日期控件

    1. **视觉设计**:控件可能采用了独特的设计风格,如扁平化、圆角或者渐变色,以符合iOS的现代审美标准。 2. **交互体验**:滑动选择日期,点击选择特定日期,或者是其他创新的交互方式,使得用户在选择日期时更加...

    iOS控件 -- UIImageView使用详解

    在iOS开发中,UIImageView是用于显示图像的UI控件,它是UIKit框架的一部分。这个控件在用户界面设计中扮演着重要角色,无论是显示应用图标、背景图片还是用户头像,UIImageView都是不可或缺的元素。本篇文章将深入...

    swift-iOS基础控件链式编程

    例如,`UILabel`类的一个方法可能返回`UILabel`的实例,使得我们可以立即接着设置其他属性,如文字、字体和颜色: ```swift let label = UILabel().text("Hello, Swift").font(.systemFont(ofSize: 16)).textColor...

    UILabel-category.zip

    在iOS开发中,UILabel是用于显示单行或多行文本的常用控件,它在用户界面设计中扮演着重要角色。为了提高开发效率和代码的可维护性,开发者常常会使用Category(分类)来扩展UILabel的功能,使其更加灵活和强大。...

    自定义弹窗.zip

    利用UILabel、UIImageView和UITextField等控件添加这些元素,并设置相应的文字样式、图像大小等。 3. **动画效果**:为了提升用户体验,自定义弹窗通常会伴随入场和离场动画。可以使用Core Animation框架中的...

    swift-iOS聊天气泡

    5. **圆角和剪切 mask**: 对于聊天气泡的圆角,可以使用`cornerRadius`属性,或者创建一个CAShapeLayer并设置其`mask`属性来实现更复杂的效果,比如不规则的剪切圆角。 6. **NSAttributedString**: 如果气泡中需要...

    自定义警告栏

    在iOS开发中,我们经常需要向用户展示各种提示信息,如警告、确认或者提供操作选项。自定义警告栏是提高用户体验和应用个性化的一种方法。在本篇中,我们将深入探讨如何利用`alertView`的替代方案——`alterView`来...

    自定义支付密码框

    在iOS开发中,自定义支付密码框是一种常见的需求,它允许开发者根据应用的特定设计风格和功能需求,创建独特且安全的用户输入界面。本文将深入探讨如何在iOS平台上实现自定义密码框,并结合标签“iOS password”进行...

    (0089)-iOS/iPhone/iPAD/iPod源代码-滑杆(Slider)-Customized Slider

    在iOS开发中,UISlider是UI控件的一种,用于用户交互选择一个范围内的值。它通常被称为滑杆或滑块,因为用户可以通过在一条条带上拖动拇指来改变值。在"(0089)-iOS/iPhone/iPad/iPod源代码-滑杆(Slider)-...

    自定义tabbar

    自定义TabBar主要是通过继承UITabBarController或直接使用UIControl、UIButton等控件来构建。通过重写相关方法和属性,我们可以调整TabBar的外观、交互行为以及响应事件。同时,利用AutoLayout确保在不同屏幕尺寸下...

    自定义POP view

    在iOS开发中,自定义POP(Present Over Previous)视图,通常称为弹窗或提示框,是一种常见的用户界面元素,用于向用户提供临时信息或者进行一些轻量级的交互操作。自定义POP视图允许开发者根据具体需求设计独特的...

    不规则lable

    在iOS开发中,`UILabel`是苹果提供的一个基础控件,用于显示单行或多行的文本。当遇到“不规则label”这样的需求时,通常意味着我们需要对UILabel进行一些自定义设置,使其外观或行为偏离标准样式。这可能涉及到字体...

Global site tag (gtag.js) - Google Analytics