如何淡化 UIImageView 的角/边缘/边框

2024-01-05

我在论坛上找不到这个,所以我决定发布这个。

我有一个 UIImageView ,其代码如下,可以使图像彼此淡出。

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound)];

imageNames = [NSArray arrayWithObjects:@"image1.jpg", @"image2.jpg", @"image3.jpg", @"image4.jpg", @"image5.jpg", nil];
imageview.image = [UIImage imageNamed:[imageNames objectAtIndex:0]];
[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(transitionPhotos) userInfo:nil repeats:YES];

// Rounds corners of imageview
CALayer *layer = [imageview layer];
[layer setMasksToBounds:YES];
[layer setCornerRadius:5];

}

- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

-(void)transitionPhotos{

if (photoCount < [imageNames count] - 1){
    photoCount ++;
}else{
    photoCount = 0;
}
[UIView transitionWithView:imageview
                  duration:2.0
                   options:UIViewAnimationOptionTransitionCrossDissolve
                animations:^{imageview.image = [UIImage imageNamed:[imageNames objectAtIndex:photoCount]]; }
                completion:NULL];
}

我想实现一个可以淡化图像视图边框的代码。

我知道我可以使用 QuartzCore.framework,但是我无法找到如何实现我想要的结果的指南。

执行这种方法的最短代码是什么?


有一个包含蒙版的图像(透明背景上的模糊矩形):

UIImage *mask = [UIImage imageNamed:@"mask.png"];

创建一个遮罩层:

CALayer *maskLayer = [CALayer layer];
maskLayer.contents = (id)mask.CGImage;
maskLayer.frame = imageView.bounds;

并将其指定为 imageView 的掩码:

imageView.layer.mask = maskLayer;

编辑: 您可以使用以下阴影属性通过代码完全创建遮罩CALayer。只是玩玩shadowRadius and shadowPath:

CALayer *maskLayer = [CALayer layer];
maskLayer.frame = imageView.bounds;
maskLayer.shadowRadius = 5;
maskLayer.shadowPath = CGPathCreateWithRoundedRect(CGRectInset(imageView.bounds, 5, 5), 10, 10, nil);
maskLayer.shadowOpacity = 1;
maskLayer.shadowOffset = CGSizeZero;
maskLayer.shadowColor = [UIColor whiteColor].CGColor;

imageView.layer.mask = maskLayer; 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何淡化 UIImageView 的角/边缘/边框 的相关文章

随机推荐

  • 变量名中的问号

    在 React 自定义钩子中 我们以下面的方式返回订单号 变量后面的问号是什么receipt order id意味着反应 export const useTest props gt return orderTestNumber receip
  • Riverpod - 以更好/优雅的方式创建具有异步依赖项的服务

    我写了一些代码 提供了ApiService to a StateNotifier The ApiService依赖于authenticatorclient 身份验证客户端必须异步创建 因为它使用共享首选项来获取令牌 我只是想弄清楚他们是否是
  • 全日历中只有月视图(删除/隐藏“日”和“周”视图)

    我的全日历有 月 周 日 视图 我想删除或隐藏 周 和 日 视图 因为我们只使用 月 视图 你能告诉我该怎么做吗 当您启动 fullcalendar 时 不要包含agendyDay 和agendaWeek 就像是 calendar full
  • AWS Lambda 安排延迟执行运行一次

    我有一个带有 Lambda 的 API 网关 对于某些端点 我想在将来安排一次执行 运行一次 例如在 T 时间进行 REST 调用 我希望 lambda 在 T 时间安排一次执行 20分钟 我发现实现此目的的唯一解决方案是使用 boto3
  • 使用 R grid 包的线条

    我正在使用 R 和 cygwin 并尝试绘制一些基本图形 以下是 Paul Murrell 的一篇论文中的一个简单示例 library grid x lt rnorm 50 y lt x rnorm 50 1 2 rx lt range x
  • 要在实体框架中编辑多对多关系,为什么必须先清除集合?

    我有以下代码用于编辑用户所在的部门 出于某种原因 method1导致 EF 尝试再次插入关系 并导致主键错误 其中method2成功了 为什么代码是method1不知道通过重新分配值 我只想要新的部门集合 是method2更新值的首选方法
  • 多个服务主机有什么好处?一个 ServiceHost 是否支持一个端点上的多个同时连接?

    我正在考虑自行托管我的 WCF 服务 而不是使用 IIS 对我来说 一个大问题是我是否需要像 IIS 那样实例化多个服务主机 或者一个就足够了 除了由于隔离而导致的安全原因之外 多个服务主机还有什么好处吗 一台服务主机可以同时为一个端点上的
  • ssis 过滤掉值以字母开头的行

    在 SSIS 项目中 我尝试从 Excel 文件源中筛选出行 其中列的值以字母开头 后跟数字 某些单元格包含多个值 并且并非所有单元格都遵循某种数据类型格式 目前数据流程如下 Excel Source gt Data Conversion
  • Google Drive API - 获取包括文件夹在内的文件列表

    我需要列出用户驱动器云中的所有图像 I use https www googleapis com drive v2 files https www googleapis com drive v2 files使用正确的过滤器来查询所有图像 我
  • inotify 不会在文件修改时触发通知

    我一直在调整这个例子here http www ibm com developerworks linux library l ubuntu inotify index html使其反复监视文件的 修改 我的代码是here http past
  • Fluent NHibernate - 配置 Oracle Data Provider ODP

    我是 NHibernate 和 Fluent NHibernate 的新手 我正在尝试让以下配置正常工作 private static ISessionFactory CreateSessionFactory return Fluently
  • Python 中的正则表达式反向引用问题

    我不知道为什么这不起作用 也许我遗漏了 Python 正则表达式的一些东西 这是我的正则表达式和我希望它匹配的示例字符串 PHONE REGEX lt gt phone EXAMPLE
  • 向传单地图添加任意图像

    我正在尝试使用传单来显示比平时更小的地图 所以我不想使用普通的平铺系统 我不关心平滑缩放和在需要时加载更高分辨率的图块 相反 我尝试从图像文件添加光栅图像 可以这么说当我谷歌 手绘地图 时出现 So I try download file
  • 将角色关联到正在运行的 AWS 实例

    为了运行AWS监控脚本 http docs aws amazon com AmazonCloudWatch latest DeveloperGuide mon scripts perl html http docs aws amazon c
  • 创建 TCP 网络错误以进行单元测试

    我想在测试期间创建各种网络错误 我在 Linux 上直接在 C 中使用 Berkely 套接字 API 我正在 Boost Test 中的另一个线程中运行模拟服务器 该线程在本地主机上侦听 例如 我想在连接期间创建超时 到目前为止 我已经尝
  • 取消图标的亮点

    在编程和查看所有不同的应用程序时 我意识到应用程序商店中的某些应用程序顶部没有亮起的突出显示 使其看起来更具 3D 效果 我有一个应用程序的想法 但我需要去掉重点 该应用程序已在 Xcode 中编程 因此如果有人回答 那就太好了 谢谢 fr
  • C# 中的多媒体定时器中断(前两个中断不好)

    我使用分辨率为 1 毫秒 周期为 10 毫秒的多媒体计时器 问题是多媒体计时器严重中断了前两个事件 因为我得到了 1 ms 的差异 这不是我想要的 public partial class Form1 Form public Form1 I
  • 使用 django-autocomplete-light 添加更多字段时出错

    我有一个问题 我正在使用 2 个库 Django 自动完成灯 and Django 动态表单集 两人都非常擅长完成自己的工作 第一个用于自动完成 第二个用于使 django 表单集动态化 but当你想加入这两个时 就会出现问题 问题的图像
  • 工具栏按钮单击事件功能

    我已经在中创建了设置按钮Toolbar 现在每当我单击设置按钮时 我都需要将屏幕导航到设置屏幕 menu menu
  • 如何淡化 UIImageView 的角/边缘/边框

    我在论坛上找不到这个 所以我决定发布这个 我有一个 UIImageView 其代码如下 可以使图像彼此淡出 void viewDidLoad super viewDidLoad Do any additional setup after l