小编0xS*_*ina的帖子

将'__autoreleasing .....'发送到不兼容类型的参数

我有个街区;

typedef void (^SIResponseHandler) (id obj, NSString *error);
Run Code Online (Sandbox Code Playgroud)

和方法:

+ (void)uploadPhoto:(UIImage *)photo
toPathForComponents:(NSArray *)components
  completionHandler:(SIResponseHandler)responseHandler;
Run Code Online (Sandbox Code Playgroud)

和另一种调用上述方法的方法:

+ (void)updateProfilePhoto:(UIImage *)photo handler:(SIResponseHandler *)handler {

    NSArray *components = @[@"users", sharedInstance.username, @"profile", @"photo", @"upload"];
    [SIRequest uploadPhoto:photo
       toPathForComponents:components
           progressHandler:nil
         completionHandler:handler];
}
Run Code Online (Sandbox Code Playgroud)

在最后一行,我收到此错误:

Sending '__autoreleasing SIResponseHandler *' (aka 'void (^__autoreleasing *)(__strong id, NSString *__strong)') to parameter of incompatible type 'SIResponseHandler' (aka 'void (^)(__strong id, NSString *__strong)')
Run Code Online (Sandbox Code Playgroud)

我不知道这是什么意思.有人可以解释一下发生了什么吗?谢谢

cocoa-touch objective-c ios automatic-ref-counting

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

Bunder需要yaml/logger

我正在使用bundler来要求我项目中的所有宝石.但是,它不适用于yaml/logger.

如果我将gem'yaml'添加到我的gemfile中,并运行bundle install,我得到:

Could not find gem 'yaml (>= 0) ruby' in the gems available on this machine.
Run Code Online (Sandbox Code Playgroud)

但我通常要求它很好.我究竟做错了什么?

谢谢

ruby bundler

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

Swift nil值行为

你能发送消息到nilSwift以同样的方式,你可以在Objective-C不导致飞机坠毁?

我试着查看文档,找不到任何与此相关的内容.

objective-c swift

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

为什么我需要在 drawInRect 中调用 glClear?

我有一个简单的 GLKViewController,我将屏幕设为白色:

- (void)viewDidLoad {
    [super viewDidLoad];

    self.context = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];

    GLKView *view = (GLKView *)self.view;
    view.context = self.context;

    [EAGLContext setCurrentContext:self.context];

    glClearColor(1, 1, 1, 1);
    glClear(GL_COLOR_BUFFER_BIT);
}

- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect {
}
Run Code Online (Sandbox Code Playgroud)

然而,这不起作用。

但是,如果我将 glClear 调用移动到 drawInRect,则它可以工作:

- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect {
    glClear(GL_COLOR_BUFFER_BIT);
}
Run Code Online (Sandbox Code Playgroud)

这是为什么?为什么必须在 drawInRect 中调用 glClear 而不是 glClearColor ?

iphone opengl-es ios glkit

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

GLSL着色器用于纹理'烟雾'效果

我环顾四周,没有找到任何相关的东西.我正在创建一个着色器以提供纹理烟雾效果动画,如下所示:

例

不要求完整/完整的解决方案(虽然那会很棒)但是我可以开始实现这种效果的任何指针.我是否需要为绘图设置顶点?如果我只有纹理,这是否可能?

opengl-es glsl opengl-es-2.0

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

WSDL文件和SOAP标头

我这里有一个wsdl文件:"模糊"我想知道如何从这个文件中获取SOAP头文件?这对我来说看起来很神秘,所以如果有人可以指点我的教程,那就太棒了.我想要的只是肥皂串,我需要传递给NSURLConnection,我可以使用NSXMLParser进行解析.

例如,这里的教程:http://www.icodeblog.com/2008/11/03/iphone-programming-tutorial-intro-to-soap-web-services/显示了如何实现它,但它没有展示如何从wsdl文件中获取SOAP消息.

谢谢!

cocoa-touch soap wsdl objective-c ios

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

Ruby线程致命死锁错误

我有这个简单的ruby代码:

require 'rubygems'
require 'Thread'


queue = Queue.new

t = Thread.new do
  loop do
    user = queue.pop

    puts "Unqueued #{user.nickname}, running all scripts..."

    #do stuff
    user.run_all

    puts "Finished running all script for  #{user.nickname}, sleeping for 2"
    sleep 2

    queue << user    
  end
end

t.join
Run Code Online (Sandbox Code Playgroud)

当我尝试运行它时,它给了我这个错误:

deadlock 0x10ec549f0: sleep:-  - ./Machine.rb:9
deadlock 0x10ea46348: sleep:J(0x10ec549f0) (main) - ./Machine.rb:23
fatal: Thread(0x10ea46348): deadlock
    from ./Machine.rb:23:in `join'
    from ./Machine.rb:23
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
    from (irb):1
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?谢谢

ruby multithreading

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

我怎样才能让它更快?(C/C++)OpenCV

我正在处理视频中的帧并实时显示(实时).算法很快,但我想知道是否有任何我可以做的优化会使它更加无缝.我不知道我的算法中的哪些函数占用了大部分时间,我的猜测是sqrt()函数,因为它显然有一些查找,但我不确定.

这是我的算法:

IplImage *videoFrame = cvCreateImage(cvSize(bufferWidth, bufferHeight), IPL_DEPTH_8U, 4);
videoFrame->imageData = (char*)bufferBaseAddress;
int channels = videoFrame->nChannels;
int widthStep = videoFrame->widthStep;
int width = videoFrame->width;
int height = videoFrame->height;

for(int i=0;i<height;i++){

    uchar *col = ((uchar *)(videoFrame->imageData + i*widthStep));

    for(int j=0;j<width;j++){

        double pRed     = col[j*channels + 0];                      
        double pGreen   = col[j*channels + 1];       
        double pBlue    = col[j*channels + 2];       

        double dRed     = green.val[0] - pRed;
        double dGreen   = green.val[1] - pGreen;
        double dBlue    = green.val[2] - pBlue;

        double sDRed    = dRed * …
Run Code Online (Sandbox Code Playgroud)

c c++ algorithm opencv image-processing

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

NSDateFormatter没有格式化(返回nil)

我有一个日期字符串,例如:

2012-04-09T23:57:44.070Z
Run Code Online (Sandbox Code Playgroud)

我的日期格式是:

[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
Run Code Online (Sandbox Code Playgroud)

但它回来了.我的日期格式有什么问题?谢谢

cocoa-touch objective-c nsdateformatter ios

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

MVC - 视图是否可以继续引用其视图控制器并处理数据?

使用Cocoa-Touch,但这是一个普遍的问题.

视图是否可以保持对其视图控制器的引用并处理数据?我最近遇到了一个代码库,通过应用程序执行此操作 - 例如,有一个表视图控制器,它的单元格具有对视图控制器的弱引用(因此没有保留周期).单元格通过提供新的视图控制器

[self.parentVC presentViewController.....];
Run Code Online (Sandbox Code Playgroud)

并以类似的方式解雇它.此外,它们还处理数据/网络操作的变化.

直到我看到这个,我习惯于为每个单元创建协议并通过它们与父视图控制器通信.使用直接引用视图控制器的方法摆脱了所有协议.

对我来说,这似乎非常糟糕,但不确定它是否很常见.

model-view-controller cocoa-touch objective-c uiviewcontroller ios

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

Redis 保存错误

我在跑

save 600 1 
Run Code Online (Sandbox Code Playgroud)

如果至少有 1 个键已更改,则在我的 redis-cli 上每 10 分钟保存一次,但是它给了我:

(error) ERR wrong number of arguments for 'save' command
Run Code Online (Sandbox Code Playgroud)

我从 redis 的官方网站上拿这个例子:http : //redis.io/topics/persistence

我究竟做错了什么?

redis

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