iOS开发_条纹背景

主控制器的关键代码:

ViewController.m

#import "ViewController.h"

@interface ViewController ()

@property (weak, nonatomic) IBOutlet UITextView *textF;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    //1. 创建一行背景图
    CGFloat rowW = self.view.frame.size.width;
    CGFloat rowH = 40;
    UIGraphicsBeginImageContextWithOptions(CGSizeMake(rowW, rowH), NO, 0.0);

    //画矩形框
    CGContextRef ctx = UIGraphicsGetCurrentContext();
    [[UIColor whiteColor] set];
    CGContextAddRect(ctx, CGRectMake(0, 0, rowW, rowH));
    CGContextFillPath(ctx);

    //2.画线
    [[UIColor blackColor] set];
    CGFloat lineWidth = 1;
    CGContextSetLineWidth(ctx, lineWidth);
    CGFloat dividerX = 10;
    CGFloat dividerY = rowH - lineWidth;
    CGContextMoveToPoint(ctx, dividerX, dividerY);
    CGContextAddLineToPoint(ctx, rowW - dividerX, dividerY);
    CGContextStrokePath(ctx);

    //3.取图
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    //4.结束上下文
    UIGraphicsEndImageContext();
    //5.设置背景
    self.textF.backgroundColor =[UIColor colorWithPatternImage:newImage];

}

-(void)imagebg{
    UIImage *oldImage = [UIImage imageNamed:@"me"];
    UIGraphicsBeginImageContextWithOptions(self.view.frame.size, NO, 0.0);
    [oldImage drawInRect:self.view.bounds];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    self.view.backgroundColor =[UIColor colorWithPatternImage:newImage];
}

@end
时间: 2024-10-09 06:14:38

iOS开发_条纹背景的相关文章

IOS开发之触摸背景关闭键盘的代码实现

直接上代码: // 触摸背景,关闭键盘 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ UITouch *touch = [touches anyObject]; UIView *view = (UIView *)[touch view]; if (view == self.view) { [weightTextField resignFirstResponder]; } } 以上代码是在一个viewContro

iOS开发_初识视频直播

一.使用第三方ijkPlayer框架开发直播 1.去到B站得github主页,找到ijkplayer项目,下载源码 ijkplayer下载地址 2.Demo的使用以及如何编译Demo 请移步如何快速的开发一个完整的iOS直播app(播放篇) 其实里面讲的很详细,我也是参照这个写的Demo.然后在他的基础上加了一点东西.(不废话我直接上我的代码) 先看看效果图 特点 1.纯代码Masonry布局 2.集成ijkplayer第三方库,实现拉流播放 3.打包ijkplayer静态库,实现release

iOS开发-简单图片背景替换(实现抠图效果)

之前好奇, 想实现这样的功能   -----> iOS图像处理-(jpg去除白色背景) 把一张图片(.jpg)的白色背景抠掉,转成.png 格式的有alpha通道的透明图. 原图黑白分明, 像这样转换成这样 然后在论坛,得到了想要的答案.这里先谢过那位大牛, 也提供了参考资料:iOS8 Core Image In Swift:更复杂的滤镜 然后今天, 自己也总结一下. 写了个小小的demo, 实现背景图片的切换. 效果如下: 可以看到, 原先的黄色渐变背景被替换掉了.  接下去就是要实现这样一个

iOS开发_常用的正则表达式

实现正则表达式匹配的方式 常用的正则表达式 实现正则表达式匹配的方式 iOS中有三种方式可以实现正则表达式的匹配. 1.利用NSPredicate(谓词)匹配 例如匹配有效邮箱: NSString *email = @"[email protected]"; // 邮箱的正则表达式 NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; //

iOS开发_内存管理

1.ObjC中对象是存储在堆中的,系统并不会自动释放堆中的内存,但是基本类型是由系统自己管理的,放在栈上. 2.要开发一个程序并不难,但是优秀的程序则更测重于内存管理,它们往往占用内存更少,运行更加流畅. 3.野指针就是指针所指向的内存地址已经被系统回收,而指针没有被置为空;内存泄露就是该被回收的对象没有被回收,导致内存被占用,也就是内存泄露. 4.在ObjC中给空对象发送消息是不会引起错误的. 5.属性参数: retain:先release,再retain,用于非字符串对象 copy:先rel

iOS 开发_..和self...的区别以及使用

相信很多初学者对_和self.之间的区别并没有一个大致的认识,那么下面对两者的区别做一个简单的介绍: 至于重写set和get方法,简要说明一下,当我们使用@property这用法之后,系统便会自动给我们定义的变量以一个默认的set和get方法.插一句,_any和self.any的区别,_any就是只指_any本身,是系统会生成的,而如果我们重写了any的set方法后,self.any会调用我们重写的set方法中的内容,而_any不是,比如这句 -(void)setCount:(NSUIntege

ios开发-设置view背景

1. 直接给View设置背景 self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"1.jpg"] ]; 2.给UIScrollView 设置背景图片 这个一般在图片较大,并且视图需要滚动时候使用. 原理都一样,调个函数就是了. // 初始化滚动试图 UIScrollView *tempScrollView = (UIScrollView*)self.view; // 设置背景

iOS开发_图片涂鸦

主控制器的关键代码: 一  ViewController.m #import "ViewController.h" #import "ZRPaintView.h" #import "UIImage+ZR.h" @interface ViewController () - (IBAction)clear; - (IBAction)back; - (IBAction)save; @property (weak, nonatomic) IBOutlet

iOS开发_内存泄漏、内存溢出和野指针之间的区别

今天,在大连有一个面试,被问到了内存泄漏和野指针指向的区别,自己答的不是很好,特意回来查了资料,在博文中总结一下经验,欢迎指正. 内存泄漏:是指在堆区,alloc 或new 创建了一个对象,但是并没有放到自动释放池中,或者没有free 对象,导致这块内存一直被占用,换一种方法说,就是没有指针指向这块内存,再通俗点,开辟了一段空间,在没有被释放之前,结果找不到这块内存了,这样就会造成内存泄漏的问题.这块内存会直至程序运行结束才会被释放. 野指针:是指针指向已经delete 的对象,或者是未申请访问