图画、图片显示

来源:互联网 发布:网络语言暴力公益广告 编辑:程序博客网 时间:2024/04/27 20:27
画图、图片显示
使用drawRect函数画图的步骤:
1.获取上下文。这是固定格式CGContextRef  context=UIGraphicsGetCurrentContext();
其中context是自己随便取的上下文名称
2.CGContextSetRGBStrokeColor(context, 0, 0, 1, 1);使用RGB给画笔设置颜色,其中前三个数值是红色,绿色,蓝色等的程度,可以选择其中一个给画笔,那就把另外两个设为0,最后一个参数是非透明度。
3. CGContextSetLineWidth(context, 1);设置线条的粗细,数字可以随便改
4.CGContextStrokePath(context);开始绘图;当然还有其他方式,比如画矩形,具体参见API


图片显示通常我们用到的是UIImageView

-(void)drawImageRect:(CGRect)rect

{


    UIImage *image=[UIImage imageNamed:@"iphone.jpg"];

    //原图片

    CGImageRef imageRef=image.CGImage;

    CGImageRef subImageRef=CGImageCreateWithImageInRect(imageRef, rect);

    //原图中抠出来部分图

    UIImage *subImage=[UIImage imageWithCGImage:subImageRef];

    //新图

    _imageView.image=subImage;

    _imageView.frame=rect;

    

    [UIView beginAnimations:nil context:nil];

    //改变frame,改变过程中添加动画

    [UIView setAnimationDuration:0.5];

    _imageView.frame=CGRectMake(020, rect.size.width, rect.size.height);

    [UIView commitAnimations];


}


可以看到所谓的显示图片只是把原图中的一部分抠出来,然后给他指定大小,然后给它动画,这样就能抠图了。

    UIImage *image=[UIImage imageNamed:@"iphone.jpg"];

    //原图片

    CGImageRef imageRef=image.CGImage;

    CGImageRef subImageRef=CGImageCreateWithImageInRect(imageRef, rect);

    //原图中抠出来部分图

    UIImage *subImage=[UIImage imageWithCGImage:subImageRef];

    //新图

    _imageView.image=subImage;

    _imageView.frame=rect;

这几行代码是关键,将UIImage类型的image转化成CGImageRef类型的imageRef,然后根据imageRef和划出的区域取出画出的部分,再将这部分重新转化成UIImage类型。最后给UIImageView类型的_imageView显示出来。


设置根视图控制器时要选择UIViewController,而且要在主函数中把根视图控制的权利给它。然后再根据这个根视图控制器建立子视图,我们最好在子视图里面写主要代码,而在跟视图中只是初始化一个子视图,这样更有逻辑性,更符合面向对象编程。


取CGRect类型的宽和高使用.size.width,取CGPoint类型的是取它的x和y,此时只需要用.x和.y即可。
0 0
原创粉丝点击