今天我的问题是关于UITableViewController-s特别是我注意到了datasource委托方法
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;
Run Code Online (Sandbox Code Playgroud)
被调用两次(即使例如我只是创建一个基于导航的应用程序而不添加一行代码..添加一个NSLog来跟踪它).现在,因为在我的应用程序中,我需要确定基于文件系统中文档选择的部分数量,我需要调用一些方法来实现.我已经将这些方法放在上面提到的方法中,因此它们将被调用两次,这是我不需要的.问题是为什么它被调用两次,我可以调用一次吗?我希望在官方文档中没有明确说明(这意味着我根本不读它:)).顺便说一句,我可以看到其他人发布类似的问题,但我找不到一个完全令人满意的答案.谢谢.
我的应用程序从服务器,数据和数据描述符下载了几个资源.由用户操作触发的这些下载可以同时执行,例如,一次最多50次下载.所有这些异步任务最终都会在内存中创建对象(例如,将叶子附加到数据结构,例如向可变字典或对象添加键到数组).我的问题是:这会导致稳定性问题吗?例如,如果几个同时的任务尝试将键添加到同一个字典中,我是否应该处理这种情况,放置某种锁?如果我实现了一个在数组中查找图形元素的for循环,那么其他正在运行的任务是否可能在循环期间更改数组内容?关于除官方文档之外的多任务,多线程问题的任何参考或主要,一般方向?
我想我理解(正式)协议和类别之间的区别.现在,如果我做对了,非正式协议应该是类别(通常在NSObject上定义),这些类别用于某些目的(可能只提供实现其中列出的部分方法的机会,与正式协议不同).我需要确定一下:任何人都可以确认非正式协议只是一个类别(或解释差异)吗?谢谢.
我今天的问题是Xcode如何处理它创建的应用程序包中的资源文件.我知道这可能是微不足道的,但我找不到一个简单的出路.基本上我的问题是Xcode似乎继续在应用程序包中包含资源文件(例如文本文件),即使该文件已从项目中删除.这里详细介绍了这里发生的事情.
? Added a file to the project (both by choosing file - new file or dragging a file to the Xcode groups and files left column checking add to project folder if needed checkbox)
? Compiled and launched the project in simulator
? Verified that the file is present in myApp.app bundle, located in User/Library/Application/Support/iPhone Simulator/3.2/Applications/<application system number>/myApp.app and even in <my Xcode projects folder>/myApp/build/debugiPhonesimulator/myApp.app
? Deleted the file from groups and files column in Xcode
? Deleted the …Run Code Online (Sandbox Code Playgroud) 今天我的问题是关于日期格式和字符串.我的应用程序下载一些代表互联网日期的字符串.日期格式总是这样:"2010-05-24 at 20:45"我需要将此字符串转换为NSDate对象,以便执行某些日期操作.我试过这段代码:
NSString * dateString = @"2010-05-24 at 20:45" // actually downloaded from the internet
NSDateFormatter * myDateFormatter = [[NSDateFormatter alloc] init];
[myDateFormatter setDateFormat:@"yyyy-MM-dd 'at' HH:mm"];
NSDate * dateFromString = [myDateFormatter dateFromString:dateString];
Run Code Online (Sandbox Code Playgroud)
只要iPhone设置为24小时,这似乎完全正常.只要我在常规设置中切换到12h时钟,就不会创建NSDate对象(并且应用程序很快崩溃)我已经读过其他有类似问题的人,但我似乎找不到解决方案.现在问题:对我来说NSDateFormatter对用户设置是明智的是没有意义的,只要我指定它应该用于解析字符串的格式(由于它来自Web而不可修改),检查用户设置的用途是什么?更重要的是,如何执行任务(无论用户设置如何,都从字符串中获取NSDate对象)?
我正在构建一个复合NSPredicate来在iOS应用程序中使用sqlite上的核心数据进行获取请求.一切都已经正常,但我无法包括最后一个条件.原因很简单:我需要检查存储为字符串的值是否在某些浮点范围内.问题是条件是按字母顺序检查的,而不是根据其浮点值.这是代码:
NSString * conditionToBeAdded = [NSString stringWithFormat:@" && (%@ >= \"""%@\""") && (%@ <= \"""%@\""")", propertyName, myMinFloat, propertyName, myMaxFloat];
stringForPredicate = [stringForPredicate stringByAppendingString:conditionToBeAdded];
NSPredicate * myPredicate = [NSPredicate predicateWithFormat:stringForPredicate];
Run Code Online (Sandbox Code Playgroud)
有人知道如何构建一个能够将字符串值检查为数字的NSPredicate对象,以便在coredata请求中使用吗?
谢谢.
iphone ×4
xcode ×4
ios ×3
multitasking ×2
objective-c ×2
call ×1
categories ×1
core-data ×1
delegates ×1
file ×1
format ×1
locking ×1
nspredicate ×1
nsstring ×1
protocols ×1
resources ×1
time ×1
uitableview ×1