小编gra*_*pe1的帖子

如何在没有SKShapeNode的情况下实现循环加载器

我想创建一个简单的圆形装载机动画圆圈和它周围的边框正在消失

我找到了很棒的框架,但他们使用SKShapeNode和SKShapeNode性能对于实际部署的应用程序来说非常糟糕

ProgressNode:非常酷的框架

sprite-kit skshapenode swift

9
推荐指数
1
解决办法
275
查看次数

Swift计时器,以毫秒为单位

我想每毫秒更改一次计时器,但它不能按预期工作.

NSTimer.scheduledTimerWithTimeInterval(0.001, target: self, selector: Selector("advanceTimer:"), userInfo: nil, repeats: true);

func advanceTimer(timer: NSTimer){

    self.time += 0.001;

    let milliseconds = self.time * 100;
    let remaingMilliseconds = Int((milliseconds % 1000) / 10);
    let seconds = Int((milliseconds / 1000) % 60)

    let strSeconds = String(format: "%02d", seconds)
    let strFraction = String(format: "%02d", remaingMilliseconds)

    timerText.text = "\(strSeconds):\(strFraction)";

 }
Run Code Online (Sandbox Code Playgroud)

结果是

计时器在毫秒部分(00:100)中更改为100,然后更改为01:00 = 40实际秒

邓肯方法:

var time: NSTimeInterval = 0;
var startTime: NSTimeInterval = 0;

//And your  timer method...
func advanceTimer(timer: NSTimer){
    //Total time since timer …
Run Code Online (Sandbox Code Playgroud)

xcode swift

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

使用Swift Mailer将html和css邮件发送到gmail

我有一些基本的HTML和一些CSS但由于某种原因gmail把3D infornt'text/css'

代码示例

$message = "
            <style type='text/css'>
              #main {border:1px solid red;}
            </style>

              <div id='main'>some text</div>
";
Run Code Online (Sandbox Code Playgroud)

但是当我查看原始发送到gmail时

<style type=3D'text/css'>
Run Code Online (Sandbox Code Playgroud)

也许这就是为什么邮件没有样式.我正在使用swift邮件程序

//也是在html中

<div id=3D'main'>
Run Code Online (Sandbox Code Playgroud)

//快速邮件

    $type = $message->getHeaders()->get('Content-Type');
    $type->setValue('text/html');
    $type->setParameter('charset', 'utf-8');
Run Code Online (Sandbox Code Playgroud)

html css email gmail swiftmailer

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

在移动平台上移动节点

我有一个移动平台,但当节点在平台上方时,它不会随平台水平移动

在本文中,解释了问题:移动平台地狱

http://www.learn-cocos2d.com/2013/08/physics-engine-platformer-terrible-idea/

在评论中有Box2D的解决方案:运动体

但是SpriteKit怎么样?

更新

我正在使用平台

let moveHPart1 = SKAction.moveByX(origW, y: 0, duration: moveDuration);
let moveHPart2 = SKAction.moveByX(-origW, y: 0, duration: moveDuration);

platform(SKAction.repeatActionForever(SKAction.sequence([moveHPart1, moveHPart2])));
Run Code Online (Sandbox Code Playgroud)

physics sprite-kit swift

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

循环和范围运算符的基准测试

我读到基于范围的循环在某些编程语言上具有更好的性能。在 Swift 中是这样的吗?例如在游乐场:

func timeDebug(desc: String, function: ()->() )
{
    let start : UInt64 = mach_absolute_time()
    function()
    let duration : UInt64 = mach_absolute_time() - start

    var info : mach_timebase_info = mach_timebase_info(numer: 0, denom: 0)
    mach_timebase_info(&info)

    let total = (duration * UInt64(info.numer) / UInt64(info.denom)) / 1_000
    println("\(desc): \(total) µs.")
}

func loopOne(){
    for i in 0..<4000 {
        println(i);
    }
}

func loopTwo(){
    for var i = 0; i < 4000; i++ {
        println(i);
    }
}
Run Code Online (Sandbox Code Playgroud)

基于范围的循环

timeDebug("Loop One time"){
    loopOne(); // …
Run Code Online (Sandbox Code Playgroud)

benchmarking loops for-loop swift

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