小编Yum*_*nc.的帖子

SWIFT-OperationQueue.main.addOperation和DispatchQueue.main.async有什么区别?

有时我必须在主线程上做一些事情,建议将代码放在OperationQueue.main.addOperation

其他时候,建议在其中编写代码DispatchQueue.main.async

两者之间有什么区别?

(有一个类似的问题标题,但是内容不匹配。)

queue asynchronous operation swift dispatch-queue

5
推荐指数
1
解决办法
334
查看次数

如何通过Prestashop的webservice(rest api)输入记录

如何在没有PHP的情况下发送PUT HTTP请求?

我已经使用了PHP堆,但现在我正在为智能手机写作.(使用Swift,Java并且是C#).(如果被问到,我可以显示我使用的快捷代码.)

GET很简单,您也可以将URL放在Web浏览器中以获得响应.我有几种方法来获取客户,地址,产品等,这些方法运作良好.(我还有许多对象模型 - 比如数据库表结构 - 存储数据.).(因为JSON更容易解码/编码,我应用"&output_format = JSON".如果我也可以PUT/POST JSON ...)

POST也在工作!我可以获取空白模式,插入新的详细信息(使用纯文本)并将XML发送(POST)到URL.它确实是这样,并发送一个包含插入记录的响应,其中包含CDATA包含的详细信息.(即我想在abc中插入input_data)响应包括指定的id.这很好用!

然而,当涉及到制作PUT(以及将来可能是DELETE ......)时,我一直都会遇到错误.

使用Fiddler,我可以查看确切的事务(请求和响应):[请参阅:https : //ibb.co/kC0QTy ]我还使用了REST客户端应用程序(WizTools.org),其响应也是例外.

但是使用PUT - 更新细节,我首先获取记录(通过id)根据需要进行更改然后我将XML返回到相同的URL.所以它与上面类似,但它失败了:

(相反,发送JSON会更容易.)

PUT http://example.com/api/customers?ws_key=ABC..XYZ
Content-Type: application/xml; charset=utf-8
Accept: */*
...

<?xml version="1.0" encoding="UTF-8"?>
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<customer>
<id>
 ...
</customer>
</prestashop>
Run Code Online (Sandbox Code Playgroud)

它响应:

HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset=utf-8
...

<?xml version="1.0" encoding="UTF-8"?>
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<errors>
<error>
<code><![CDATA[127]]></code>
<message><![CDATA[XML error : String could not be parsed as XML
XML length : 0
Original XML : ]]></message>
</error> …
Run Code Online (Sandbox Code Playgroud)

xml rest post put prestashop

5
推荐指数
0
解决办法
449
查看次数

MKMapView有警告(VKBuildingFootprintTileSource)

在旧iPad(使用iOS 9.4)上测试我的应用程序时,会显示以下消息:

" 想要网格大小64.000000,最小显示z:13,最小下载z:16.这可能是一个错误! "

这不会出现在iOS 11模拟器上.

我使用的代码不正确吗?这应该报告为错误吗?

这是一个非常简单的地图 - 我将委托设置为self并在某个位置设置了一个引脚.

为什么我会收到此消息?

mkmapview ios swift

5
推荐指数
0
解决办法
313
查看次数

Swift:如何将 NSView 旋转 45 度?

我想展示我的对象,在绘制内部组件后,滚动到 45 度角。我怎样才能轻松实现这一目标?

该对象是用 a 的子类绘制的NSView。它结合了多重NSBezierPath和填充,包括弧线等。然后同一个对象在不同的​​旋转位置使用几次 -不是动画!

我使用该NSView.rotate(byDegrees:)方法,但它似乎只适用于 90 度的因素 - 其他角度似乎会缩放并省略曲线(奇怪的结果)。

您可能不需要代码,但这是对象:

override func draw(_ dirtyRect: NSRect) {
    super.draw(dirtyRect)
    wantsLayer = true
    layer?.masksToBounds = false
    let context = NSGraphicsContext.current!.cgContext
    let path = NSBezierPath(ovalIn: dirtyRect)
    NSColor.red.setFill()
    path.fill()
}
Run Code Online (Sandbox Code Playgroud)

然后:

let object = MyObject(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
view.addSubView(object)
object.rotate(byDegrees: 23)
Run Code Online (Sandbox Code Playgroud)

我想看到很多MyObjects,每个都转动不同的量。我怎样才能轻松做到这一点?

macos cocoa nsview swift

5
推荐指数
0
解决办法
157
查看次数

标签 统计

swift ×3

asynchronous ×1

cocoa ×1

dispatch-queue ×1

ios ×1

macos ×1

mkmapview ×1

nsview ×1

operation ×1

post ×1

prestashop ×1

put ×1

queue ×1

rest ×1

xml ×1