相关疑难解决方法(0)

我的Objective-C单身人物应该是什么样的?

我的单例访问器方法通常是以下的一些变体:

static MyClass *gInstance = NULL;

+ (MyClass *)instance
{
    @synchronized(self)
    {
        if (gInstance == NULL)
            gInstance = [[self alloc] init];
    }

    return(gInstance);
}
Run Code Online (Sandbox Code Playgroud)

我可以做些什么来改善这个?

singleton design-patterns objective-c object-initializers

334
推荐指数
10
解决办法
18万
查看次数

iOS - 核心数据模型与Mail Framework冲突?

我有一个Core Data对象Account,表示为以下的子类NSManagedObject:

@interface Account : NSManagedObject
Run Code Online (Sandbox Code Playgroud)

我的整个应用程序一直在发展很好,但是,当我添加MessageUI.framework所以我可以得到一个撰写电子邮件视图控制器,所有地狱都松了一口气.该应用程序链接和编译很好,运行得很好.直到,也就是说,我开始与之前工作的Account对象进行交互.然后,我开始得到这些:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: '"Account" is not a subclass of NSManagedObject.'
*** First throw call stack:
(0x202b012 ... 0x2385)
libc++abi.dylib: terminate called throwing an exception
Run Code Online (Sandbox Code Playgroud)

其中一个特殊原因是:

// we need to insert a new account
Account *newAccount = [NSEntityDescription
                            insertNewObjectForEntityForName:[Account entityName] 
                            inManagedObjectContext:self.managedObjectContext];
Run Code Online (Sandbox Code Playgroud)

现在,我猜测MessageUI.framework导致冲突有一些课,但我有几个问题:

  1. 该应用程序编译并运行得很好,没有编译时名称冲突
  2. 框架中的其他组件似乎是前缀命名空间(即:)MFMailComposeViewController,那么理论帐户应该不是MFAccount吗?
  3. 我甚至没有做一个#import <MessageUI/MessageUI.h>或稍微紧一些#import <MessageUI/MFMailComposeViewController.h>,后者我检查过并没有看到任何定义Account,所以我不确定为什么甚至会加载可能的冲突.
  4. 为了确定,我重新生成了我的Core …

xcode objective-c messageui nsmanagedobject ios

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