cocoa-design-patterns相关内容
我在读到 NSArray 就是这样一个东西.听起来很沉重.我的办公桌上有 7 本关于 Objective-C、Cocoa 和 C 的非常厚的书.它们都没有提到 Class Cluster,至少我在书后的索引中找不到.那是什么? 解决方案 来自 Apple 的文档....简而言之,它是 Foundation 框架中使用的一种设计模式,这可能是 ObjC 书籍中没有提到它的原因. 类集群
..
我正面临一个非常常规的场景. 我有一个 NSArray,它有一个自定义类型的对象,比如 Person.Person 类具有以下属性:firstName、lastName 和 age. 如何从具有 Person 对象的 NSArray 中获取仅包含一个属性的 NSArray? 类似: NSArray *people;NSArray *firstNames = [people ge
..
任何人都请告诉我代表和代表之间的区别委托方法及其区别和用法??? 解决方案 很难解释,但是委托代表另一个对象执行方法.当您在列表中选择一个项目时,表视图不知道该做什么.相反,它必须向委托对象询问一个问题,特别是 didSelectRowAtIndexPath.tableview 知道的唯一信息是用户点击了哪个部分和行.因此,表格视图通过本质上说“嘿,用户在第 0 节中点击了第 4 行.做某
..
我是 Cocoa 开发的新手,我正在尝试使用我认为是 iTunes、iCal、iPhoto、Billings、1Password、Numbers、Delicious Library 等应用程序共享的“标准"布局来创建 UI 布局.这种典型的布局可以描述如下: 屏幕左侧的“库"面板,通常用于发现层次结构.该面板通常覆盖大约四分之一的水平空间. “库"面板右侧的“主"面板,大部分 UI 交互都
..
我正在尝试实现一个支持索引的 Core Data 支持的 UITableView(例如:出现在侧面的字符,以及伴随它们的部分标题).在没有核心数据的情况下,我完全没有问题: - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section;- (NSArray *)section
..
我读到 NSArray 就是这样的东西.听起来很沉重.我的桌子上有 7 本关于 Objective-C、Cocoa 和 C 的非常丰富的书.他们根本没有提到 Class Cluster,至少我在书后的索引中找不到它.那是什么? 解决方案 来自 Apple 的文档....简而言之,它是 Foundation 框架中使用的一种设计模式,这可能是 ObjC 书籍中没有提及它的原因. 类集群
..
我是可可开发的新手,我正在尝试使用我认为是由iTunes,iCal,iPhoto,Billings,1Password,Numbers,Delicious Library等应用程序共享的“标准”布局来创建UI布局。这种典型的布局可以描述如下: 屏幕左侧的“库”面板,通常用于发现层次结构。该面板通常覆盖大约四分之一的水平空间。 “库”面板右侧的“主”面板,大多数UI交互都在该面板上进行。这将
..
假设我在Objective-C中为iPhone构建一个新类。在我的一个init方法中,我想手动分配一些内存。所以,我可能有这样的事情: - (id)initWithSomeObject :( SomeObject *)someObject { self = [超级初始化]; if(self!= nil){ myObject = someObject; [myObject re
..
我们的应用必须以最小的远程http请求显示大量数据,因此我们在后端添加了一个端点,它将所有必要的数据作为单个json响应提供。这导致~1.5MB(压缩)或大约8 MB的未压缩json格式文本。 没有太大的问题,它下载10 - 30秒我们'使用ASIHTTPRequest将整个响应写入磁盘。 现在有趣的部分 - 在将未压缩文件读入内存映射字符串后,我们使用stig的 json-frame
..
我正面临一个非常常规的情况。 我有一个NSArray,它有一个自定义类型的对象,比如Person。 Person类具有以下属性:firstName,lastName和age。 如何从NSArray中获取一个只包含Person对象的NSArray? 类似于: NSArray * people; NSArray * firstNames = [people getArra
..
我很熟悉iOS开发(我的第一个应用程序),我遇到了这个问题。 我有一个iPhone应用程序,应该将用户的当前位置多个用户按钮触摸ViewController。为了防止冗余代码(在不同的视图控制器中实现 locationManager:didFailWithError , locationManager:didUpdateToLocation:fromLocation 等多次)我决定创建一个名
..
我正在创建具有大量自定义视图的iOS应用程序,因此,使用默认的Cocoa视图不是一个选项。然后,我决定使用协调/调解员控制器设计模式(在Apress的Pro Objective-C设计模式iOS中学习)。 从委托中,我创建一个指向我协调控制器视图的rootViewController: self.window = [[UIWindow alloc ] initWithFrame:[[
..
我在理解iPhone的交易概念时遇到问题。帮帮我!代表也混淆了我。有人愿意解释吗? 解决方案 Outlets (在Interface Builder中)是成员变量一个在运行时加载设计器时分配对象的类。 “code”IBOutlet 宏(这是一个空的 #define )可以让Interface Builder将其识别为在设计师。 例如,如果我拖出一个按钮,然后将其连接到 aButton
..
有人有人请让我知道代表和代表方法及其差异及其用法? 解决方案 很难解释,但代表执行方法代表另一个目的。当您在列表中选择项目时,表视图不知道该怎么办。相反,它必须向委托对象询问一个问题,具体来说是didSelectRowAtIndexPath。 tableview知道的唯一信息是用户点击的部分和行。因此,表视图通过基本上说“嘿,用户在第0部分中点击了第4行。”执行某些操作,将该信息提供给委托
..
目前我正在进行重构和重组我的应用程序。我已经意识到,模型和视图之间的一些分离,它们的控制器已经减少,我想做一些清理。 我有几个关键类使用我的应用程序:NSPersistentDocument,NSWindowController和一个模型类。 NSPersistentDocument类充当“模型控制器”。它拥有模型类的一个实例,并管理与模型的所有交互。 NSWindowContr
..
我一直在查看关于核心数据的文档,并试图找出如何安排核心数据栈,以便它可以访问我的所有UITableViewControllers。 Apple提供的所有示例都表明这是在AppDelegate上实现的,但文档不推荐这种方法,因为它太脊了!请参阅链接。 (为什么不在iPhone SDK文档中提及是另一个谜) 我的问题是,我已经重复设计模式根据TopSongs中显示的Core Data示例检
..
我有一个NSArrayController, companiesController 绑定到顶级Core Data实体 Companies 。 A 公司有许多部门 部门有许多员工;这些由1对多关系, departments 和 employees 表示。 根据员工 I的属性 salary 我认为我可以动态地做这个过滤基于工资内UI的方法: NSPredicate * predi
..
我的应用程式有一些低效率,我想了解并修正。 我的演算法是: 每个对象从网络 获取对象集合: if(对应的本地存储的对象未找到): - A create object if(在本地未找到嵌套的相关对象): - B 创建相关对象 $ b b 我通过使用作为模式一部分的相关对象的键来创建谓词查询,从而对A和B行进行检查。我看到A(总是)和B(如果执行分支到那部分)
..
我有一个iPhone应用程序,它有一个MainWindow.xib持有一个UITabBarController,它又有一个UINavigationController和一个自定义UIViewController子类的ViewControllers数组。 应用程序使用核心数据,堆栈是在应用程序委托中初始化的根据惯例)。 应用程式委托将UITabBarController新增至视窗:
..
我试图实现支持索引的核心数据支持的UITableView(例如:侧面显示的字符,以及与它们一起使用的节头)。我没有问题在所有实现这个没有Core Data使用: - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection :(NSInteger)section; - (NSArray *)sect
..