小编san*_*san的帖子

如何在UIWebView中保存内容以便在下次启动时加快加载速度?

我知道最近在iphone sdk中引入了一些缓存类,并且还有来自three20库的TTURLRequest,它允许您将请求缓存到URL.但是,因为我通过调用UIWebView的loadRequest在UIWebView中加载网页,所以这些技术并不适用.

任何想法如何保存网页,以便在下一个应用程序启动时,我不必再从网页上获取完整页面?页面本身已经有一些ajax机制,可以自动更新部分内容.

html iphone url uiwebview ios

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

@IBDesignable视图不会在Interface Builder中绘制背景颜色

我很好奇为什么不设置backgroundColor为红色?

@IBDesignable class CustomLabel: UIView {

  let view = UIView()

  func setup() {
    backgroundColor = UIColor.red
    view.backgroundColor = UIColor.green
    view.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
    addSubview(view)
  }

  override init(frame: CGRect) {
    super.init(frame: frame)
    setup()
  }
  required init?(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
    setup()
  }
}
Run Code Online (Sandbox Code Playgroud)

这是结果.

在此输入图像描述

这就是我期望的样子.

在此输入图像描述

interface-builder ios swift ibdesignable

6
推荐指数
1
解决办法
1900
查看次数

如何在 javascript 中覆盖 navigator.plugins 或如何将其设置为空?

navigator.plugins在 javascript 中为浏览器提供了插件数组。是否可以将此数组设置为空?我尝试了(navigator.plugins = null;),但它没有设置为空。另外,我尝试将其设置为空数组(navigator.plugins = new Array();

另外,如果这是可能的,这是一个好的做法吗?

javascript javascript-framework

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

如何在SpriteKit中应用全屏SKEffectNode进行后期处理

我正在尝试使用以下设置SpriteKit:

  1. 具有两个子节点的SKScene仅用于对其他节点进行分组:前景和背景.
  2. 截至目前,背景确实是空的,但最终会保留某种类型的背景精灵/图层.
  3. foreground是一个SKEffectNode,每当用户点击屏幕时,表示游戏元素的SKnode子类的新内容将作为子元素添加到其中.
  4. 此SKNode子类基本上创建3个SKShapeNodes和两个标签:外圆周,内圆周,2个标签和内圆周.内部四分之一圆周具有SKAction,使其围绕其原点/中心永久旋转.

现在这里是问题,只要前景没有任何CIFilter或者具有shouldEnableEffects = NO,一切都很好.也就是说,我可以点击屏幕,我的游戏元素被实例化并添加到主场景中.但是当我尝试将CIGaussianBlur或CIBloom添加到前台时,我注意到两件事:

  1. 帧速率降至约2fps.请注意,即使在场景中只有6个节点存在,也会发生这种情况.
  2. 效果似乎是不断裁剪其内容或调整它的框架.也就是说,如果我有一个节点,"全屏"效果似乎试图不断裁剪或调整其边界到保持所有节点所需的最小区域.这适用于一个节点:

    在此输入图像描述

这适用于2个节点:

在此输入图像描述

在OpenGL ES 2中,人们可以通过基本上将整个帧缓冲区(所有对象)渲染到纹理,然后在该纹理上至少再做一次模糊等传递,然后在附加到的帧缓冲区中呈现它来进行模糊/布局.显示或组合与原始渲染回到帧缓冲区.我希望SKEffectNode以类似的方式工作.然而,裁剪和糟糕的表现让我觉得我可能以错误的方式使用效果节点.有什么想法吗?

core-image ios ios7 sprite-kit skeffectnode

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

如何判断SKEmitterNode何时达到最大粒子数?

当使用最大粒子设置为数字的SKEmitterNode时,文档说它将停止生成粒子.我的问题是,有没有办法告诉这件事发生了?我想在完成工作后从场景中删除粒子发射器.

iphone objective-c ios sprite-kit skemitternode

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

Sprite Kit中的单个粒子和物理

我是Stackoverflow的长期用户,但第一篇文章.

我的问题看似简单,有没有办法让发射器中的粒子与场景中的物理精灵相互作用?(例如,如果我正在使用一个粒子下雨,我希望它能用一把伞反射一个人的精灵来反弹或崎岖不平.必须有一种方法,但我没有看到很多关于添加物理的文档个别粒子.任何想法?

谢谢!

cocoa-touch particles ios sprite-kit skemitternode

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

改变现有粒子的方向

我正在使用SpriteKit的粒子发射器系统在背景中构建一个移动的星形场,其中玩家的船位于屏幕的中心.

当玩家触摸屏幕的某个区域时,我会计算角度并为玩家精灵转动该方向设置动画.

但是,当我将它应用于星形场时,星形场的整个矩形都会旋转.然而,我想要的是,单个粒子只是开始向新方向移动.

这是将整张纸与整个点旋转并且仅使点移动到新角度之间的区别.那有意义吗?

这就是我到目前为止玩家正确旋转但星球场"像一整张纸一样旋转"的情况:

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    // Choose one of the touches to work with
    UITouch *touch = [touches anyObject];
    CGPoint location = [touch locationInNode:self];
    CGPoint center = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));

    CGPoint offset = rwSub(location, center);

    SKEmitterNode *starfield = (SKEmitterNode *)[self childNodeWithName:@"starfield"];

    SKSpriteNode *player = (SKSpriteNode *)[self childNodeWithName:@"player"];

    SKAction *rotateNode = [SKAction rotateToAngle: (CGFloat)atan2(offset.y, offset.x) duration:0.5  shortestUnitArc:TRUE];
    [player runAction: rotateNode];

    SKAction *rotateStarfieldNode = [SKAction rotateToAngle: (CGFloat)(atan2(offset.y, offset.x) - M_PI_2) duration:0.5  shortestUnitArc:TRUE];
    [starfield runAction: rotateStarfieldNode];
}
Run Code Online (Sandbox Code Playgroud)

iphone particles ios sprite-kit skemitternode

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

如何在我输入UITextField时获取谷歌建议并将其放在UITableView上

这个问题可能已经回答了.我想UITextField使用如下所示的建议表,如Safari所做的那样:

Safari谷歌搜索

我知道如何在键入和搜索我的sqlitecore data bases类似文本时获取文本.但是,我如何连接到谷歌或youtube"数据库"并获得建议,最重要的是显示它UITableView.

我试过这个样本,但它只在字典中搜索,而不是在线搜索结果!

请先给出一些东西!谢谢!

iphone objective-c uitableview uitextfield ios

4
推荐指数
1
解决办法
370
查看次数

iPhone应用程序需要启动画面吗?

这是我第一次总结我的应用程序.我从文档中知道应该指定启动图像,但是我创建了自己的启动视图(带有uilabel和uiimageview的viewcontroller)并且它工作得很好.但如果我不制作发射图像,我恐怕不被接受.有人可以给我一些建议吗?

iphone splash-screen ipad ios

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

iOS7 Sprite Kit可以存档整个场景并将其用作保存游戏吗?

我正在看userDataSKNode 的财产并注意到这个说法:

Sprite Kit不会对存储在节点中的数据执行任何操作.但是,在归档节点时会归档数据.

这让我想到了 - 通过归档场景及其所有的家属/控制器,是否可以实现单一的保存游戏功能?

我试图理解是否有一些神奇的[存档]消息,我可以发送到场景或场景视图,以消除编写自定义数据结构来存储保存游戏的需要.

save ios sprite-kit sknode skscene

3
推荐指数
1
解决办法
1540
查看次数

串行调度队列如何保证资源保护?

//my_serial_queue is a serial_dispatch_queue

dispatch_async(my_serial_queue, ^{

    //access a shared resource such as a bank account balance
    [self changeBankAccountBalance];

});
Run Code Online (Sandbox Code Playgroud)

如果我提交100个访问并改变银行账户余额的任务,我理解串行队列将按顺序执行每个任务,但是在使用dispatch_async时这些任务是否也按顺序完成?

如果我异步提交到串行队列的任务#23需要很长时间才能完成怎么办?任务#24只在任务#23完成时启动,还是任务#24在任务#23完成之前启动?如果是这样,任务#24在启动其工作时是否有错误的银行账户余额,从而搞砸数据完整性?

谢谢!!

concurrency objective-c grand-central-dispatch ios dispatch-async

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

如何传递类型UnsafeMutablePointer <UnsafePointer <Void >>的参数

我必须CFDictionaryCreate在Swift中使用方法(文档链接).

我很难正确初始化输入参数,以便传递类型的参数(键和值)UnsafeMutablePointer<UnsafePointer<Void>>.

这是我的代码:

    var font_name: CFStringRef! = CFStringCreateWithCString(nil, "Courier", kCFStringEncodingASCII)
    var font: CTFontRef! = CTFontCreateWithName(font_name, 25.0, nil)
    var keys: [UnsafePointer<Void>] = ???? // how to intialize with "kCTFontAttributeName"
    var values: [UnsafePointer<Void>] = ???? // how to intialize with "font" variable
    var keyCallBacks = kCFTypeDictionaryKeyCallBacks
    var valueCallBacks = kCFTypeDictionaryValueCallBacks
    var font_attributes: CFDictionaryRef! = CFDictionaryCreate(kCFAllocatorDefault,   &keys, &values, sizeofValue(keys), &keyCallBacks, &valueCallBacks)
    var attr_string: CFAttributedStringRef! = CFAttributedStringCreate(nil, "hello", font_attributes)
Run Code Online (Sandbox Code Playgroud)

ios swift

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