首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS-圆角、边框、阴影

边框宽度,以点单位,默认是0;borderColor边框颜色,默认是黑色 阴影 阴影一般需要设置layer四个属性,shadowOpacity、shadowColor、shadowOffset...和shadowRadius 1)shadowOpacity是(0,1]之间值,默认是0,当它大于0时,阴影就会显示,并且,值越大,阴影透明度越低 2)shadowColor 阴影颜色,默认是黑色...,当值越来越大时候,边界线看上去就会越来越模糊和自然 5)shadowPath 可以通过这个属性单独于图层形状之外指定阴影形状 阴影是绘制layer边界之外,所以当我们设置masksToBounds...属性YES 时,阴影就会被裁剪掉 圆角+阴影 从上面我们可以得出,因为对裁剪属性不同需求,一个view上,圆角和阴影一般是不可并存,那么我们需要怎么办呢?...解决这个问题之前,我们还需要了解阴影另一个特性:阴影是依据view内容外形确定,而不是根据边界和角半径来确定,下面放张图来解释一下 ?

2.5K50

视觉效果 -- iOS Core Animation 系列三

然后代码写入如下代码: @interface ViewController () @property (weak, nonatomic) IBOutlet UIView *leftView; @property...borderWidth是以点单位定义边框粗细浮点数,默认为0。borderColor定义了边框颜色,默认为黑色。 borderColor是CGColorRef类型。...如上面的示例结果一样,边框并不会把寄宿图或子图层相撞计算出来。而且绘制边框会显示最上层。 阴影 shadow 阴影属性 控制图层阴影属性会比前面的边框多一些。...shadowOpacity属性控制阴影透明度,它是一个0.0和1.0之间浮点数,如果设置1.0将会显示一个轻微模糊阴影。...shadowColor属性控制着阴影颜色,和borderColor一样,它类型也是CGColorRef,阴影默认是黑色

1.1K30
您找到你想要的搜索结果了吗?
是的
没有找到

Ios常用第三方框架(一)

ReplaceAnimation.swift - 基于 @ZeeYoung欧阳哲 同学创意下拉刷新动画实现。值得称赞还有额外增加了“取消及滚动”效果支持。...SnapKit - 就是“snap”, --swift 喜欢自动布局吗?当然喜欢!至少storyboard创建时会喜欢。...代码纯手工创建约束灰常痛苦,但幸运是我们有了SnapKit,board中用上它,你可以简单直观地编写约束了。...FXLabel - FXLabel是一个功能强大使用简单类库,通过提供一个子类改进了标准UILabel组件,字体增加了阴影、内阴影和渐变色等,可以被用在任何标准UILabel。...DTCoreText - 可以解析HTML与CSS最终用CoreText绘制出来,通常用于一些需要显示富文本场景下代替低性能UIWebView。DTCoreText源码解析。

5.4K31

基础渲染系列(十三)——延迟着色

让我们看一下灯光阴影同时不启用和同时启用效果。 ? ? (没有VS有阴影使用前向渲染路径时,请使用帧调试器检查场景渲染方式。 场景中有66个几何对象,全部可见。...1.3 分解 与前向阴影相比,渲染多个光源时,延迟阴影似乎更有效。前向渲染需要每个物体每个灯光额外增加一次pass,但延迟渲染不需要这样做。...当然,两者仍然都必须渲染阴影贴图,但是延迟不必定向阴影所需深度纹理支付额外费用。延迟渲染路径是如何解决它呢?...(自发光,但是是错) 我们现在使用颜色已完全阴影化,好像有定向光一样,这是不正确。可以通过将延迟设置黑色虚拟光消除所有的直接光计算。 ?...(有反射和无反射自发光) 事实证明,当需要时,我们 deferred pass 已经渲染了反射,不然的话会将其保持黑色。实际上,我们一直都在使用反射探针。只是它们不使用时设置黑色

2.7K20

iOS动画系列之一:带时分秒指针时钟动画(上)1. 最终实现效果以及思维导图2. CALayer3. 隐式动画

iOS,看得见摸得着东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView 其实UIView之所以能显示屏幕上,完全是因为它内部一个图层 创建...CALayer 创建CALayer 设置frame时候,内部同时设置了position,bounds.size 都会发生改变。...2.3.1 修改透视 真实世界,当物体远离我们时候,由于视角原因看起来会变小,理论上说远离我们视图边要比靠近视角边跟短,但实际上并没有发生,而我们当前视角是等距离,也就是3D变换任然保持平行...“为了做一些修正,我们需要引入投影变换(又称作z变换)来对除了旋转之外变换矩阵做一些修改,Core Animation并没有给我们提供设置透视变换函数,因此我们需要手动修改矩阵值,幸运是,很简单:...m34默认值是0,可以通过设置m34-1.0 / d来应用透视效果 d代表了想象中视角相机和屏幕之间距离,以像素单位,那应该如何计算这个距离呢?实际上并不需要,大概估算一个就好了。”

2K30

谈谈Swiftextension

首先我们要明确,Ruby之所以可以这么写是因为它是一个纯面向对象语言,Ruby世界,一切皆对象,所有的事物都有一个共同祖先——Object。...times就是一个方法,可以看出应该是接收一个代码块(本例{puts 'hello world'}),然后调用它self(本例self即为3)次。...而在Swift,Int是一个struct(结构体),并不是个class。但是Swiftstruct与别的语言中struct不同是,struct内部也可以定义方法。...比如《The Swift Programming Language》一个例子: extension​ ​Double​ { ​ ​var​ ​km​: ​Double​ { ​return​ ​...譬如我最近在自己项目中给被点击UIView(比如button)写了一个小动画,点击了之后组件会上浮一下,并且同时会有一下阴影效果。

50820

【IOS开发进阶系列】动画专题

如果设置1.0,将会显示一个有轻微模糊黑色阴影稍微图层之上。...阴影默认是黑色,大多数时候你需要阴影也是黑色。         shadowOffset属性控制着阴影方向和距离。它是一个CGSize值,宽度控制这阴影横向位移,高度控制着纵向位移。...万幸是这些都是不必要,Core Animation提供了一个CALayer子类CATextLayer,它以图层形式包含了UILabel几乎所有的绘制特性,并且额外提供一些特性。        ...iOS 5,苹果引入了一个新框架叫做GLKit,它去掉了一些设置OpenGL复杂性,提供了一个叫做CLKViewUIView子类,帮你处理大部分设置和绘制工作。...尽管不需要GLKit也可以做到这一切,但是GLKit囊括了很多额外工作,比如设置顶点和片段着色器,这些都以类C语言叫做GLSL自包含在程序同时在运行时载入到图形硬件

39510

CALayer 图层概念二、CALayer属性二、方法

UIView负责监听和相应事件.UIView是更高层封装 iOS ,你能看得见,摸得着东西基本上都是UIView.比如一个按钮,一个文本标签,一个文本输入框, 一个图标等.这些都是UIView...UIColor, UIImage是定义UIKit框架....阴影效果shadowColor、shadowOffset、shadowOpacity属性必须同时设置后才可以看到 设置阴影颜色, 注意UIKit框架颜色不能直接设置给CGColorRef,...Core Foundation 数据类型转换成 Foundation 类型, 桥接时候也会设置到一些所有权转换等。...当对以下非 Root Layer部分属性进行修改时, 默认会自动产生一些动画效果 UIView 默认情况下禁止了 layer 动画,但是 animation block 又重新启用了它们 (1

1.4K70

Swift 3.0 探索之 UILabel

开篇 最近闲来无事,看看Swift3.0,发现和我认识1.0有很大不同了,如果不学习一下估计会落伍了,所以探究一下 Swift 开发使用(当然目前是初级水平,一起进步嘛,也欢迎菜鸟,大神一起探讨...QQ群 139852091) 正题 UILabel是我们开发中常用控件了,我今天就拿它开刀,看一下我们开发中常用UILabel属性 创建已经常规设置 //let 变量名字 = 变量类型...属性true时候 上面设置lineBreakMode属性将失效 myLabel.adjustsFontSizeToFitWidth = true //当文字超出标签宽度时,自动调整文字大小...�图1 NSAttributedString 富文本 我们还经常使用 Label 一个属性是NSAttributedString 我们看一下这个Swift里面怎么使用 ****当设置NSAttributedString...图2.png 好了,今天差不多就这些,明天继续看,看一个最简单UIView吧,代码我稍后会上传群文件(QQ群 139852091)网盘已经git,明个见!

78630

iOS点击查看大图动画效果

今天就讲解一个查看和收起大图动画效果,先直接看效果图: 如图所示,最开始是一个小图,点击小图可以查看大图。大图会从小图位置和大小“弹”出来,同时背景变成半透明阴影。...点击大图或者阴影后,收起大图,同样地弹回到小图去,同时去掉阴影背景,就像是一张图片在伸大缩小一样。 现在看看这是怎么实现。...首先我们定义三个属性,因为我们需要在多个方法调用,所以定义@property: @property (nonatomic, strong) UIImageView *smallImageView...阴影背景则是占据整个屏幕。同时,我也设置了两个视图点击相应方法,都是收起大图动画方法,我们之后再去实现。现在,我们可以来着手实现显示大图动画了。...这里动画我们使用是最简单iOS 7开始支持基于blockUIView动画,这篇博客也有详细讲解:iOS基础动画教程 然后,我们初始化了阴影背景视图,并添加到界面上,此时不要忘记,要再次将大图手动推送到最上层

1.6K20

ARKit 进阶:材质

使用CALayer作为内容时,如果是UIView.layer并且该UIView已经添加到其他层级,那么内容会为空。...图:specular normal normal指定了材质表面每个点法线方向,处理光照时,会根据normal计算阴影光滑表面,normal提供了一种假几何凸起,而不用去增加几何复杂度。...emission并不能让材质发光,只不过计算光照是,emission 纹理较亮点不会参与到光照计算,使这些点在阴暗环境下显得更亮一些。...emission默认是纯黑色,相当于提供了纯黑纹理,emission无效。 图:emission transparent transparent指定了材质表面每个点透明度。...某些情况下,也可以用来尝试解决深度冲突问题。 最后 材质是决定模型表现最关键因素,同时也是设计师与程序员能够直接对接环节。

3.3K01

如何使虚拟现实体验更加真实?(下)

对人类感知研究表明,通过物体和附近表面之间形成接触点并投射阴影空间中物体深度判断提供了特别强烈线索。 然而,增强现实渲染阴影是一个具有挑战性工作。...鉴于不同 HMD 独特限制和渲染方法,我们如何才能最好地 AR 中提供表面接触信息呢?为了通过实验研究这个问题,我们评估了三种头戴式显示器重量及阴影方式如何影响了表面接触感知。...简单起见,整个结果讨论过程,我们将使用以下首字母缩略词来指代我们物体阴影阴影组合:1)带黑影暗物体(DODS),2)带浅色阴影暗物体(DOLS),3)带黑影浅色物体(LODS)和4)带浅色阴影浅色物体...然而,正如我们之前一些演示中看到那样,这种附加法光模型会产生一些负面的感知效果。首先是他们无法通过在场景添加光线来正确渲染黑色。...,并考虑消除方法。

1.3K20

iOS学习——核心动画之Layer基础

我们可以通过操作CALayer对象,可以很方便地调整UIView一些外观属性,可以给UIView设置阴影,圆角,边框等等... 2、如何操作layer改变UIView外观?   ...明白要怎么选择之前,我们先了解一下UIView和layer不同点: iOS中看见,摸得着都是UIView,例如一个按钮,UITextField,UILable等等,都是UIView UIView...之所以能够显示屏幕上,是试音UIView中有一个图层 创建UIView时候,系统会自动创建一个CALayer在其中,用于显示东西,可以通过view.layer来去获取图层属性 当UIView要去显示时候...可以做一些简单动画,例如:平移,拉伸,旋转 一些比较高端动画,都是直接操作CALayer,可以制作3D动画 使用CALayer,可以直接操作显示东西,例如阴影,圆角,边框等 所以,对比CALayer...隐式动画就是当对非根层部分属性进行修改时, 它会自动产生一些动画效果,我们称这个默认产生动画为隐式动画. 9.2 如何取消隐式动画?

1.5K61

StoryBoard——高级进阶之“热重载”

但这些都是layer才有的属性,并没有提供UIView,所以我Attributes Inspector里面是没有办法设置,并且,这里也不能设置边框颜色和阴影颜色,因为边框颜色和阴影颜色是CGColor...同时我们UI类自定义属性也可以映射上去,那这个关键字要怎么用呢?...我先来自定义一个UIView,创建一个子类(如下图),然后ViewController里面再拉一个UIView,水平垂直居中,宽高固定,指定一下class。...然后RadiusView.h文件里面,我们可以随便自定义变量名,比如,圆角、边框宽度、边框颜色、阴影颜色、阴影偏移offset,然后把IBInspectable直接放到变量前面。...,因为设置了也不会生效,由于clipsToBounds,所以阴影和圆角是不能同时设置,这里有很多解决方案,我就不多说了。

45710

UI界面阴影绘制完全攻略!

静电说:不少同学绘制阴影时候,特别是卡片阴影时候,都会有不少难度,或者把握不好其中度,本篇文章,我们 一起来学习一下,如何让你在UI绘制出更舒服阴影效果。 ?...首先,咱们谈谈阴影使用场景。 ? 我们使用阴影来强调特定组件,创建深度以屏幕来创造一个特别的世界,并给出某些组件特定状态。但是,我们在哪里,以及如何明智地使用它们呢?...场景01.按钮 我们可以为按钮使用阴影来显示一些不同状态,例如悬停状态。也可以默认状态下使用它。关键在于,使它们整个按钮布局中保持平滑,柔软和融合。 ?...带有阴影提示图形 场景04.活动项目(如开关) 当涉及到活动状态(例如切换或选定列表项)时,一种不错做法是它们提供视觉层次结构,例如颜色,当然还有阴影。另外,使它们简单而柔软。 ?...(对于按钮而言,较少偏移量效果可能更好。) ? 不同Y值偏移量 自然过渡色 对于有颜色元素,一种好做法是阴影设定与元素相同颜色,并使其更暗一些

2.4K20

GIMP 教程:如何在 GIMP 创建曲线文本

当你 GIMP 制作一个徽章、海报或其它任何作品时,你需要扭曲或弯曲一些文本。多功能 GIMP 工具提供一些创建弯曲文本方法。...取决于你将如何使用它和你想给予文本弧度,有一些适合不同情况方法。 本篇教程,我将向你展示我最喜欢创建曲线文本方法。...image.png 最后,选择油漆桶工具,选择一种颜色,并如下应用你选择区。 image.png 额外提示:创建阴影效果 我还有一个作为一次挑战额外步骤,如果你想更进一步的话。...让我们 GIMP 勾勒文本以创建一个弯曲文本阴影效果。...我将给予你一些提示: 重新启用所有图层 单击弯曲文本图层,并使用移动工具来到处移动文本 创建另一个图层,并使用黑色来重复油漆桶填充程序 以一种模拟一种阴影位置方式覆盖图层(你可能需要更改图层顺序) 关闭辅助图层

2.1K30

Unity可编程渲染管线系列(九)烘焙阴影(混合光照)

仅使用单个定向光时,生成贴图为黑色和红色。没有阴影片段红色,因为红色通道用于存储阴影衰减。...对于每个可见光,我们可以通过从灯光对象获取烘焙输出来检查它是如何烘焙。如果混合烘焙类型,则将灯光混合烘焙模式设置阴影遮罩时,将使用阴影遮罩。 ? 我们着色器关键字添加一个多编译指令。...尽管此数据是通过插值式光探测器提供,但其用途与阴影遮罩完全相同,但适用于动态对象。因此,适当时候将其返回BakedShadows。 ? ?...距离阴影遮罩模式消除前者同时利用了后者。所有阴影都是实时,而烘焙阴影使用超出阴影距离。因此,此模式比仅使用实时阴影更为昂贵,而不是更便宜。 ?...BakedShadows条件编译也是如此。 ? 但是MixRealtimeAndBakedShadowAttenuation,我们必须每种模式做一些不同事情。

2.7K10
领券