如何给imageview设置圆角

如何给imageview设置圆角,第1张

android设置imageview圆角主要使用的是shape.xml文件,对四个角的角度进行设置,只要再imageview的background的属性上加上shape文件即可达到效果,示例如下:

shapeyuanjiao3.xml:

<?xml version="1.0" encoding="UTF-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

android:shape="rectangle" >

<!-- 填充的颜色 -->

<solid android:color="#0000FF" />

<!-- 设置按钮的四个角为弧形 -->

<!-- android:radius 弧形的半径 -->

<corners android:topLeftRadius="@dimen/RoundedAmplitude" android:topRightRadius="@dimen/RoundedAmplitude"/>

<gradient

android:angle="270"

android:centerColor="#0000FF"

android:endColor="#0000FF"

android:startColor="#0000FF" />

</shape>

imageview、textview等的android:background="@drawable/shapeyuanjiao3"属性,设置尺寸、圆角(可以定制单独显示哪个角需要圆角)。可以参考我的csdn博客的这篇文章:http://blog.csdn.net/nihaoqiulinhe/article/details/46833819

iOS切圆角的方式

第一种方法:通过设置layer的属性

最简单的一种,但是很影响性能,一般在正常的开发中使用很少.

离屏渲染,耗费性能但是比较简单

//只需要设置layer层的两个属性

//设置圆角

imageView.layer.cornerRadius = imageView.frame.size.width / 2

//将多余的部分切掉

imageView.layer.masksToBounds = YES

[self.view addSubview:imageView]

第二种方法:使用贝塞尔曲线UIBezierPath和Core Graphics框架画出一个圆角

性能最高,配合缓存和异步加载最适合在cell上使用

第三种方法:使用CAShapeLayer和UIBezierPath设置圆角

与第一种方法的底层原理一致,但效率稍高一下,常用于通用控件中

会导致离屏渲染,cell上不可用

首先需要导入<AVFoundation/AVFoundation.h>

@interface ViewController ()

@end

@implementation ViewController

CGPoint fromPoint = self.imageView.center//路径曲线UIBezierPath *movePath = [UIBezierPath bezierPath][movePath moveToPoint:fromPoint]CGPoint toPoint = CGPointMake(300, 460)[movePath addQuadCurveToPoint:toPoint controlPoint:CGPointMake(280,0)]//关键帧CAKeyframeAnimation *moveAnim = [CAKeyframeAnimation animationWithKeyPath:@"position"]moveAnim.path = movePath.CGPathmoveAnim.removedOnCompletion = YES[self.imageView.layer addAnimation:moveAnim forKey:nil]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11211155.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存