小编Ela*_*adG的帖子

设置Singleton类的@property

目前我在AppDelegate类上使用了一个Property.

现在,随着我的需求消耗,我需要更多的这些全局属性,所以我想创建一个Singleton类,它将保存属性并将管理它们.我发现了很多关于单身人士的信息,但我无法弄清楚,是否有可能在没有班级实例的情况下修改该属性?

例如:

@interface Tools : NSObject

@property (nonatomic,retain) NSDictionary* item;

... 

@end
Run Code Online (Sandbox Code Playgroud)

我想要做:

[Tools setItem:someDict];
someClass = [someClass alloc] initWithItem:[Tools getItem]];
Run Code Online (Sandbox Code Playgroud)

我的所有想法最终都遇到了类Tools没有实例的问题.我已经尝试将项目设置为静态变量(不是属性),这有效,但我确信这不是正确的原因.

相关但不同的问题,添加:

#import "Tools.h"
Run Code Online (Sandbox Code Playgroud)

对于项目-Prefix.pch文件,所以项目属性将从项目的任何地方可用,是个好主意?

iphone macos ios4 ios

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

重新打开AVCaptureSession

我有一个应用程序,需要一些照片.我的整个应用程序都是基于WWDC 2010 的AVCam示例代码.我已经搞砸了很多但直到现在我还无法弄清楚如何正确释放相机视图以释放相机会话......

我要做的就是以下几点:

  • 打开相机视图控制器
  • 拍一些照片
  • 关闭相机视图控制器
  • 再打开它

第二次推送viewController会话丢失,预览不可用,捕获也不可用.我在github上发布了完整的示例代码.

我对这个问题的解决方法是根本不释放相机,因此Camera View Controller充当Singleton,我认为这不是正确的方法.此外,有了这种行为,我无法找到一种方法来支持相机应用程序进入后台(例如电话).

请指教.如何破坏相机会话?这样做很重要吗?

iphone cocoa-touch avfoundation ios avcam

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

从CLI运行脚本但阻止在包含时运行

我有一个我经常使用CLI(常规ssh终端)运行的PHP脚本.

<?php

    class foo {
        public function __construct() {
            echo("Hello world");
        } 
    }

    // script starts here...
    $bar = new foo();

?>
Run Code Online (Sandbox Code Playgroud)

当我使用我运行代码时,php filename.php我得到了Hello world预期的停滞.问题是当我从其他php文件中包含文件时,我得到了同样的东西(我不想要).

如何在文件包含时阻止代码运行但仍将其用作CLI脚本?

php command-line-interface

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

NSOperationQueue的独特工作

在iPhone项目中,我有一个NSOperationQueue,它处理与服务器的通信,我的appDelegate对象和上传作业,如下所示:

@interface UploadOperation : NSOperation

- (id)initWithItem:(NSDictionary*)anItem;

@end
Run Code Online (Sandbox Code Playgroud)

我正在根据用户的请求将项目推送到触发上传的NSOperationQueue.一切都很好,但我想阻止相同的上传操作发生超过一次.换句话说,如果上传未完成,请不要将同一项目推送到上传队列.

是否可以使用NSOperationQueue方法,或者我必须使用"当前在队列中的项目"数组来管理它?

iphone ios

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