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]欢迎分享,转载请注明来源:内存溢出
评论列表(0条)