Tag: nsobject

如何在同一个ViewController中初始化两个NSObject实例 – Swift

请多多包涵。 我是新手编程和新的StackOverflow。 我希望我的问题能够给我一个进入编程界的热烈回应。 一个相信我的信任的人告诉我在StackOverflow上发布这封电子邮件给他。 我需要做什么才能让两个NSObject实例在同一个ViewController中工作? 我已经初始化了一个名为SideBar和RightSideBar的NSObject子类。 他们都从NSObject中提取。 菜单中的单元格由编程创build的TableViewController创build。 我跟随了一个以编程方式完成所有事情的教程,因为我不知道Storyboard更适合构build事物。 以下是代码库。 编辑:对不起长时间的啰嗦。 我不知道如何使这个更短,更完整 =========== ****请注意,SideBar子类是左侧菜单。 RightSideBar类具有相同的初始化设置,并且是正确的菜单。 如果可能的话,我希望能够使它们在同一个ViewController的同一个实例中出现在相同的ViewController中。 这是左边的TableViewController: import UIKit //this protocol of the sidebar delegate manages the selection of the item in the row. protocol SidebarTableViewControllerDelegate { func sidebarControlDidSelectRow(indexPath: NSIndexPath) } class SidebarTableViewController: UITableViewController { //setting up the delegate and array of menu items. var […]

从自定义类中显示alertController

我试图从我所做的类中显示一个AlertController。 由于AlertController是UIResponder的一个子类,我正在使用Xcode提示我的以下代码行 superclass?.presentViewController(alertController, animated: true, completion: nil) 但是我不能编译,因为AnyClass? 没有任何成员presentViewController。 我的类是NSObject的一个子类。 任何其他解决scheme 谢谢

我如何从NSString获得课程?

例如,我有 NSString *myClass = @"RootViewController" 我如何从NSString获得课程?

NSObject类别 – 保持安全

苹果有这样的说法 : 根类的分类 一个类别可以向任何类添加方法,包括根类。 添加到NSObject的方法可用于链接到您的代码的所有类。 用类别向根类中添加方法有时可能是有用的,但也可能是相当危险的。 虽然这个类别所做的修改看起来似乎很好理解而且影响有限,但inheritance给它们的范围很广。 您可能会对您的应用程序中看不见的类进行意外更改; 你可能不知道你在做什么的所有后果。 而且,其他工作在你的应用程序上,不知道你的变化,不会明白他们在做什么。 我的问题是,如果我select的方法名称足够怪异,我确信没有其他人会使用它们(无论是在苹果公司还是在我的项目中),我是否仍然会陷入困境? 难道还会有意外的行为吗? 性能影响?

WaitUntilDOne在performSelectorOnMainThread中有什么意义?

WaitUntilDOne在performSelectorOnMainThread什么意义? 以什么方式YES或NO设置为WaitUntilDone可以在应用程序上? 更新: 我的问题应该是:他们在哪些情况下有所作为? 塞尔吉奥的回答是我期待的那个。

如何尽快调用一个方法,但最快在下一次运行循环迭代?

我需要一个保存的方式来说:“iOS,我希望这个方法尽快执行,但不是在这个运行循环迭代中,最早在下一个,但请不要在这个,谢谢。 现在我总是这样做: [self performSelector:@selector(doSomethingInNextRunLoop) withObject:nil afterDelay:0]; [self doSomeOtherThings]; 假设-doSomeOtherThings将始终执行一些其他-doSomethingInNextRunLoop 。 该文件说: 指定延迟0不一定会导致select器立即执行。 select器仍在线程的运行循环中排队,并尽快执行。 所以基本上可能会发生这样的情况:即时调用方法就好像我刚刚发送了一个直接的消息,导致-doSomethingInNextRunLoop在执行之前执行一些其他的-doSomeOtherThings ? 我怎样才能绝对确保它将被称为asap,但从来没有在这同样的运行循环迭代? 为了澄清措辞:运行循环我的意思是主线程,所有方法必须返回的迭代,直到线程再次准备好新的事件。

Swift:'(NSObject,AnyObject)'没有一个名为'subscript'的成员

我试图从远程通知的userInfo字典中提取徽章值。 我读了很多post,发现了我的问题的解决scheme,但我很不满意! 所以这里是我的数据结构(我删除了无用的行): { aps = { badge = 7 } } 为了从我的userInfo提取这个数字'7',我想要做到以下几点: self.updateAppIcon(userInfo["aps"]["badge"] as? Int) 但是,我当然得到以下错误: Swift:'(NSObject,AnyObject)'没有一个名为'subscript'的成员 如果我没有错,那是因为[]返回一个不能被解释为另一个字典的AnyObject。 一个工作解决scheme将是做到以下几点: func handleRemoteNotifiation(userInfo: [NSObject : AnyObject]) { if let aps: AnyObject = userInfo["aps"] { if let apsDict = aps as? [String : AnyObject]{ if let badge: AnyObject = apsDict["badge"] { self.updateAppIconBadgeNumber(badge as? Int) } } } […]

iOS>“ID”与NSObject

与“typesid相比,“多态”方式中的Object与NSObject *有什么区别? 以什么方式: NSString* aString = @"Hello"; id anObj = aString; 不同于: NSString* aString = @"Hello"; NSObject* anObj = aString;

在Objective-C中用init方法创build单例的安全方法

我想采用共享实例下一步的GCD方法,所以我创build了以下代码: @implementation MyClass static id sharedInstance; #pragma mark Initialization + (instancetype)sharedInstance { static dispatch_once_t once; dispatch_once(&once, ^{ sharedInstance = [[self alloc] init]; }); return sharedInstance; } – (instancetype)init { if (sharedInstance) { return sharedInstance; } @synchronized(self) { self = [super init]; if (self) { sharedInstance = self; } return self; } } @end 我假设sharedInstance方法似乎没问题,但我不确定有关的init方法。 创build这个的原因是,我不希望人们使用我的SDK,使用init方法,如果他们这样做…使其防弹。

从自定义对象数组中删除重复项Swift

我有一个自定义的类定义如下: class DisplayMessage : NSObject { var id : String? var partner_image : UIImage? var partner_name : String? var last_message : String? var date : NSDate? } 现在我有一个数组myChats = [DisplayMessage]? 。 id字段对每个DisplayMessage对象都是唯一的。 我需要检查我的数组,并从中删除所有重复,基本上确保数组中的所有对象都有一个唯一的id 。 我已经看到了一些使用NSMutableArray和Equatable解决scheme,但我不知道如何适应它们。 我也知道Array(Set(myChats))但是这似乎不适用于自定义对象数组。