美文网首页ios程序员ios学习
iOS几行代码让界面变圆角

iOS几行代码让界面变圆角

作者: MarkNote | 来源:发表于2015-11-08 09:01 被阅读1086次

最近有一些比较流行的应用,界面都是圆角的。比如Memopad,Pinterest之类的,都是。
琢磨了一下,发现这个其实很简单。我们只需要在UIView上做点功夫就可以了。
创建一个UIView的Category,名为UIView+RoundCorner,在头文件UIView+RoundCorner.h中声明如下:

#import <UIKit/UIKit.h>
@interface UIView (RoundCorner)
-(void)makeRoundedCorner:(CGFloat)cornerRadius;
@end

在实现文件UIView+RoundCorner.h代码如下:

#import "UIView+RoundCorner.h"

@implementation UIView(RoundCorner)

-(void)makeRoundedCorner:(CGFloat)cornerRadius
{
    CALayer *roundedlayer = [self layer];
    [roundedlayer setMasksToBounds:YES];
    [roundedlayer setCornerRadius:cornerRadius];
}
@end

使用方法

让某个UI元素变圆角

对所有UIView或者其派生类,直接使用该方法即可,比如下面的代码让一个UIButton变圆角了:

[btn makeRoundedCorner:12.0f];

疗效如下(为了让疗效看起来更明显,我把按钮弄黑了):

Paste_Image.png

让整个界面变圆角

只需要在ViewContolloer中调用这个方法就好了,比如:

[self.view makeRoundedCorner:12.0f];

如果你的ViewController在UITabBarController中,你只需要调用这个方法就可以让整个界面所有的界面都变成圆角的。
比如

 if (self.parentViewController) {
        [self.parentViewController.view makeRoundedCorner:12.0f];
    }

疗效如下:


app

相关文章

  • iOS几行代码让界面变圆角

    最近有一些比较流行的应用,界面都是圆角的。比如Memopad,Pinterest之类的,都是。琢磨了一下,发现这个...

  • 【iOS 开发】几行代码给整个界面添加圆角效果

    只要几行代码,就能够给整个界面视图添加圆角效果,也可以给单独的控件添加圆角效果,接下来看效果吧。 创建分类 首先创...

  • 圆角性能优化

    圆角卡顿刨根问底一行代码,圆角风雨无阻,告别离屏渲染性能损耗iOS 保持界面流畅的技巧iOS 高效添加圆角效果实战讲解

  • 几行代码搞定设置界面

    军哥用了好长时间给大家写了一个设置界面,目前还是1.0版本,只有基本功能,后面会上新功能,废话不多说先来看效果gi...

  • 边框圆角

    边框:border圆角:border-radius让四个角都成圆角 示例:HTML代码 style样式代码 圆角:...

  • iOS 知识收集

    性能优化 iOS 保持界面流畅的技巧 UIKit性能调优实战讲解 iOS高效设置视图圆角 使用 ASDK 性能调优...

  • IOS界面翻译问题

    ios界面翻译主要可以分为两部分界面翻译和代码中涉及表述翻译。需要切换随系统需要设置的改变而变 一~界面翻译(以s...

  • new learning----- Cut All Corner

    最近接触了个新项目,写了几个new界面。关于控件切圆角设置的,有几点想法想谈下。。。。 iOS切圆角的方式 本篇只...

  • iOS-二维码生成

    几行代码就可以实现了,iOS自带 下面是github的demo

  • iOS 使用代码以及 xib的形式设置按钮圆角

    为了美观,项目当中按钮经常会被要求设为圆角,如果是 xib 形式搭建的界面,然后再用代码去设置圆角,实在很麻烦; ...

网友评论

  • ColeX:一般都是类别里直接 写个属性,然后手动 生成set方法, 调用的时候 比如self.view.cornerRadius = 6.;
  • 没故事的卓同学:我的代码里直接把这个配置成一个属性,这样调用的时候简洁一些。反正实际上都是一个set方法
  • Joy___:请问 写代码的黄色区域是怎么做的? 是简书的那个功能?自己找不到啊 都是贴照片 太麻烦
    Joy___:谢谢您 已经搞定
    MarkNote:@MarkNote 就是用 代码用```包起来
    MarkNote:@Martin_ 格式用markdown 代码
  • 4305824b6977:界面有很多这样的圆形头像很卡,这个方法耗性能吧?请问怎么解决?新浪微博里这界面也卡
    KamyShi:@剁椒鸡蛋 有的时候可以通过drawrect画一下,
    4305824b6977:@没故事的卓同学 多谢指导:yum:
    没故事的卓同学:@Napolee layer层有个参数可以渲染成bitmap缓存(self.layer.shouldRasterize = YES;),会提高一些性能。但是如果很多元素,比如一堆头像,还是偷偷盖一个遮罩图片在上面比较好。这样性能最高。

本文标题:iOS几行代码让界面变圆角

本文链接:https://www.haomeiwen.com/subject/ntwchttx.html