小编Ans*_*eja的帖子

使用UIBezierPath绘制圆角

我有一个设计元素,无法弄清楚;希望有人可以指出正确的方向。我尝试构建的元素就是这样;

没有下边框的圆形按钮

实际上,它是一个圆角矩形,在左侧,顶部和右侧都有笔触(底部应没有笔触)。

我涉猎了以下代码;

// Create the rounded rectangle
let maskPath = UIBezierPath(roundedRect: myView.bounds, byRoundingCorners: [.topLeft, .topRight], cornerRadii: CGSize(width: 4.0, height: 4.0))

// Setup a shape layer
let shape = CAShapeLayer()

// Create the shape path
shape.path = maskPath.cgPath

// Apply the mask
myView.layer.mask = shape
Run Code Online (Sandbox Code Playgroud)

随后,我使用以下内容在矩形周围绘制笔触;

// Add border
let borderLayer = CAShapeLayer()
borderLayer.path = maskPath.cgPath
borderLayer.fillColor = UIColor.clear.cgColor
borderLayer.strokeColor = UIColor.white.cgColor
borderLayer.lineWidth = 2.0
borderLayer.frame = self.bounds
self.layer.addSublayer(borderLayer)
Run Code Online (Sandbox Code Playgroud)

这将产生以下图像;

圆角矩形笔画

我无法弄清楚如何使用UIBezierPath()删除底部笔画绘制项目,但是以与舍入的rect相同的方式舍入拐角(我正在使用另一个舍入的rect)。相同的视图用于不同的目的,并且圆角必须相同)。

谢谢!

calayer ios uibezierpath swift

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

iOS 版 strava api 中的授权回调问题

我正在我的应用程序中集成 strava api。我需要有关授权回调域的帮助,即在 api 注册期间需要,以便在授权后设备浏览器再次打开应用程序以供进一步使用。当我尝试提交myapp://作为回调域时,它给了我错误(此字段必须是域,没有斜线或路径)。我似乎无法输入任何有效域的内容。因为重定向 url 或 uri 是应用程序在其属性列表中描述的内容。它还自己在重定向 uri 中添加了 http。例如,当我们myapp在 strava 和 plist 文件中注册为 url scheme 然后在myapp://safari 浏览器中打开应用程序。但是 strava 将其更改为https://www.strava.com/oauth/authorize?client_id=*****&response_type=code&redirect_uri=http://myapp&approval_prompt=force.

为什么http://在重定向uri中添加了以及为什么我无法注册myapp://为重定向 uri?

我检查了一个旧的例子,在他们的重定向 uri 中有斜杠。那么该示例如何工作并在重定向 uri 中使用斜杠进行注册?

所以,任何人都请帮助我解决这个问题。

提前致谢。

ios swift strava

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

标签 统计

ios ×2

swift ×2

calayer ×1

strava ×1

uibezierpath ×1