相关疑难解决方法(0)

在UIView外部添加边框(而不是在内部)

如果使用视图中的代码添加视图的边框

self.layer.borderColor = [UIColor yellowColor].CGColor;
self.layer.borderWidth = 2.0f;
Run Code Online (Sandbox Code Playgroud)

边框添加到视图内部,如下所示: 在此输入图像描述

右视图是原始视图,如您所见,边界视图的黑色区域小于原始视图.但我想得到的是原始视图之外的边框,如下所示:在此输入图像描述.黑色区域等于原始区域,我该如何实现呢?

border uiview ios

80
推荐指数
6
解决办法
9万
查看次数

Swift - 角半径和投影的问题

我正在尝试创建一个带圆角投影的按钮.无论我如何切换,按钮都无法正确显示.我试过masksToBounds = falsemasksToBounds = true,但无论是圆角半径工程和影子不或影子工程和圆角半径不夹按钮的角落.

import UIKit
import QuartzCore

@IBDesignable
class Button : UIButton
{
    @IBInspectable var masksToBounds: Bool    = false                {didSet{updateLayerProperties()}}
    @IBInspectable var cornerRadius : CGFloat = 0                    {didSet{updateLayerProperties()}}
    @IBInspectable var borderWidth  : CGFloat = 0                    {didSet{updateLayerProperties()}}
    @IBInspectable var borderColor  : UIColor = UIColor.clearColor() {didSet{updateLayerProperties()}}
    @IBInspectable var shadowColor  : UIColor = UIColor.clearColor() {didSet{updateLayerProperties()}}
    @IBInspectable var shadowOpacity: CGFloat = 0                    {didSet{updateLayerProperties()}}
    @IBInspectable var shadowRadius : CGFloat = 0                    {didSet{updateLayerProperties()}}
    @IBInspectable var shadowOffset …
Run Code Online (Sandbox Code Playgroud)

shadow cornerradius ios swift xcode6

70
推荐指数
5
解决办法
7万
查看次数

UIBezierPath减去路径

通过使用[UIBezierPath bezierPathWithRoundedRect:byRoundingCorners:cornerRadii:],我可以创建一个圆形视图,如下所示:

圆形视图

我怎样才能从这一个(或其他方式)中减去另一条路径,以创建这样的路径:

减去视图

我有什么方法可以做这样的事情吗?伪代码:

UIBezierPath *bigMaskPath = [UIBezierPath bezierPathWithRoundedRect:bigView.bounds 
                                 byRoundingCorners:(UIRectCornerTopLeft|UIRectCornerTopRight)
                                       cornerRadii:CGSizeMake(18, 18)];
UIBezierPath *smallMaskPath = [UIBezierPath bezierPathWithRoundedRect:smalLView.bounds 
                                     byRoundingCorners:(UIRectCornerTopLeft|UIRectCornerTopRight)
                                           cornerRadii:CGSizeMake(18, 18)];

UIBezierPath *finalPath = [UIBezierPath pathBySubtractingPath:smallMaskPath fromPath:bigMaskPath];
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uibezierpath

47
推荐指数
6
解决办法
3万
查看次数

在swift中创建一个只有两个圆角的矩形?

我需要在swift中创建一个只有两个圆角的矩形(Objective C代码也可以).

目前我的代码正在创建两个矩形

CGPathCreateWithRoundedRect(CGRectMake(0, 0, 30, 60), 5, 5, nil);
Run Code Online (Sandbox Code Playgroud)

CGPathCreateWithRoundedRect(CGRectMake(0, 0, 30, 60), 0, 0, nil);
Run Code Online (Sandbox Code Playgroud)

合并它们(有两个直角和两个圆角)但我对代码不满意,我很确定应该有更好的方法来做到这一点.

我是iOS和图形开发的新手.

core-graphics ios swift

38
推荐指数
8
解决办法
5万
查看次数

SKSpriteNode - 创建一个圆角节点?

有没有办法让SKSpriteNode圆形走投无路?我正在尝试用颜色填充的SKSpriteNode创建一个Tile likesqaure块:

SKSpriteNode *tile = [SKSpriteNode spriteNodeWithColor:[UIColor colorWithRed:0.0/255.0
                                                                           green:128.0/255.0
                                                                            blue:255.0/255.0
                                                                           alpha:1.0] size:CGSizeMake(30, 30)];
Run Code Online (Sandbox Code Playgroud)

如何围绕走投无路?

谢谢!

iphone objective-c ios sprite-kit

31
推荐指数
5
解决办法
2万
查看次数

为具有圆角的UIImageView创建阴影?

我试图创建一个ImageView圆角和阴影给它一些深度.我能够为它创建一个阴影UIImageView,但每当我添加代码也使它有圆角时,它只有圆角而没有阴影.我有一个IBOutlet名字myImage,它在viewDidLoad函数内部.有没有人对如何使其有效有任何想法?我究竟做错了什么?

override func viewDidLoad() {
    super.ViewDidLoad() 
    myImage.layer.shadowColor = UIColor.black.cgColor
    myImage.layer.shadowOpacity = 1 
    myImage.layer.shadowOffset = CGSize.zero
    myImage.layer.shadowRadius = 10
    myImage.layer.shadowPath = UIBezierPath(rect: myImage.bounds).cgPath
    myImage.layer.shouldRasterize = false
    myImage.layer.cornerRadius = 10
    myImage.clipsToBounds = true
}
Run Code Online (Sandbox Code Playgroud)

shadow uiview uiimageview ios swift

18
推荐指数
4
解决办法
3万
查看次数

Swift - 在阴影层切孔

我想在 UIView 和 Swift3、iOS 的阴影层中“切一个洞”

我有一个容器 (UIView),它有 2 个孩子:

  • 一个 UIImageView
  • 该图像顶部的一个 UIView(“叠加”)

我想给叠加一个阴影并切出该阴影的内部矩形,以在 ImageView 的边缘创建类似发光的效果
插入发光至关重要,因为图像占用了屏幕宽度
我的代码迄今为止:

let glowView = UIView(frame: CGRect(x: 0, y: 0, width: imageWidth, height: imageHeight))
glowView.layer.shadowPath = UIBezierPath(roundedRect: container.bounds, cornerRadius: 4.0).cgPath
glowView.layer.shouldRasterize = true
glowView.layer.rasterizationScale = UIScreen.main.scale
glowView.layer.shadowOffset = CGSize(width: 1.0, height: 1.0)
glowView.layer.shadowOpacity = 0.4

container.addSubview(imageView)
container.addSubview(glowView)
Run Code Online (Sandbox Code Playgroud)

结果如下所示:

图片

现在我想剪掉较暗的内部部分,以便只保留边缘的阴影
任何想法如何实现?

shadow calayer ios swift swift3

2
推荐指数
1
解决办法
1045
查看次数