在制作专门用于在iPhone上观看的网页/网站/应用程序时,有没有人对我有任何好的起点?
我看过Joe Hewitt所制作的模板,还看到了我可以购买的一些模板,我还没有完成.
我想其他人已经开始在这条赛道上,并决定我可能会汲取他们新发现的知识:)
那么,有没有人有任何指针?我很清楚这样的模板/框架使得Web应用程序看起来像本机iPhone应用程序的问题越多,我就越有可能遇到麻烦,因为它不是,但是现在我想要我可以开始构建一个框架,然后在此过程中弄清楚如何使其与众不同,以便被视为Web应用程序以及看起来像本机iPhone应用程序.
具体来说,我正在寻找以下功能:
编辑:为了避免人们只阅读问题并回答,在阅读我的其他回复之前,我将在此处添加我对GPL许可和类似问题的澄清.
我需要使用的框架不能在许可证下分发,这需要我根据类似的许可证授权我自己的项目.GPL许可证系列允许有关库使用的例外,但这不适用于此,因为必要时,我需要使用的框架类型将是所有源代码.
该项目可以轻松容纳商业图书馆.
此外,我不需要像这样的库或框架,看起来很好并且不会过度混淆的示例文件也是受欢迎的.
我使用界面构建器设置了标签栏控制器,每个标签栏项链接到一个视图控制器(4个标签,4个视图控制器).我想知道Interface Builder是否使用-init方法来初始化视图控制器,因为显然这个方法没有被调用:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil;
Run Code Online (Sandbox Code Playgroud)
......我想做一些初始化.我无法添加它,-viewDidLoad因为它在内存警告的情况下被召回.任何的想法?
我是否需要释放Core Foundation对象以清理内存?如果是这样,怎么样?
例如,在代码中:
ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef peopleArray = ABAddressBookCopyArrayOfAllPeople(addressBook);
Run Code Online (Sandbox Code Playgroud)
我需要发布peopleArray吗?怎么样addressBook?
我正在寻求从我的服务器到我的iPhone应用程序建立某种套接字/ COMET类型功能.基本上,每当用户设法在服务器上设置任意对象'脏'时,例如,更新他们的地址......反馈应该从服务器推送到任何保持对服务器进行实时轮询的客户端.我想这是一个流行词,就是COMET.我知道网页浏览器应用程序有DWR,所以我想,也许最好在我的每个控制器中设置一个隐藏的UIWebView,这样我就可以从他们的javascript框架中开箱即用COMET了?有更优雅的方法吗?
根据Cocoa Programming for Mac OS X,3rd Edition,第202页(第13章):
您将在应用程序的多个类中注册,读取和设置默认值.为了确保始终使用相同的名称,您应该在单个文件中声明这些字符串,然后简单地#import该文件到您使用名称的任何文件中.有几种方法可以做到这一点.例如,您可以使用C预处理器的#define命令,但大多数Cocoa程序员为此目的使用全局变量.
这真的是最正确的最佳做法吗?全局变量?这对我来说似乎很疯狂 - 反对我曾经教过的一切.
更好的设计是一个简单的Singleton类,并定义了这些?或者走向全球是否真的是最佳做法?考虑到许多人认为单身人士穿着漂亮的连衣裙是全球性的吗?
任何人都可以澄清/阐明这种情况-[NSNotificationCenter addObserver:selector:name:object:]吗?
"观察者"和"对象"参数的通知中心保留了哪些类型的引用?
从通知中心删除观察员的最佳做法是什么?
多线程应用程序有哪些特殊问题,特别是关于"对象"参数?
GC和非GC环境中此方法的行为有何不同?
在此方法的行为中,移动和桌面环境之间是否存在任何显着差异(从客户角度来看)?
此外,任何指向现有文章的指针都将非常感激.我用谷歌搜索,但很惊讶地发现对这些问题的深入讨论(尽管我可能没有使用正确的魔术关键词).
iPhone应用程序可以读取以前由Safari Mobile存储的cookie吗?
我在xcode中用Cocoa编写了一个iPhone应用程序.我找不到任何教程或示例代码,说明如何使用内置摄像头拍照.我该怎么做呢?我在哪里可以找到好消息?
谢谢!
我有一个ViewController创建一个UIView的实例,然后我用这个实例注册一个观察者
logoAnimation = [[MainLogoAnimation alloc] init];
[logoAnimation addObserver:self forKeyPath:@"patrocinioDidLoad" options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld) context:nil];
Run Code Online (Sandbox Code Playgroud)
然后,在同一个文件中,我有:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
NSLog(@"%@ \n %@ \n %@ \n ",keyPath,object,change);
}
Run Code Online (Sandbox Code Playgroud)
但是,虽然我已经检查并仔细检查了logoAnimation.patrocinioDidLoad是否发生了变化,但观察到的值仍未被调用...
我错过了什么吗?
谢谢您的帮助!
安东尼奥
我想保存并检索当前时间(如果今天)或在Core Data中创建的注释的日期
请指导我如何做到这一点.
cocoa-touch ×7
iphone ×5
cocoa ×3
objective-c ×3
camera ×1
comet ×1
core-data ×1
dashcode ×1
http ×1
javascript ×1
safari ×1