Tag: ios4

导航到iphone中的设置屏幕

我想从我的应用程序移动到iphone的设置屏幕时,按下应用程序中的button。 可以请任何人告诉如何做到这一点吗? 任何帮助表示赞赏。 对不起,我的英语不好。 谢谢

是否有可能通过使用观察者来跟踪AVAudioPlayer对象?

我遵循了关于如何使用KVO机制设置和观察者的文档http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html 这是非常简单的。 我创build了一个AVAudioPlayer对象,我想跟踪当前时间的每一个变化。 我使用这个代码来设置观察者: [_player addObserver:self forKeyPath:@"currentTime" options:NSKeyValueObservingOptionNew context:NULL]; 这个代码来处理更改: -(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"currentTime"]) { //Do something }} 而这段代码在audio结束时: – (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag{ // Remove the observation [_player removeObserver:self forKeyPath:@"currentTime"];} 由于某些原因,观察者不会调用-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context 我知道我可以使用NSTImer,并在audio开始播放时触发它,但我正在寻找更平滑的方式来做到这一点。 我也可以使用AVPlayer对象,并使用它的addPeriodicTimeObserverForInterval:queue:usingBlock:来跟踪它addPeriodicTimeObserverForInterval:queue:usingBlock:但我不想失去AVAudioPlayer对象的所有优点。 我在做什么观察员错了? 你有另一个build议如何使用AVAudioPlayer和pipe理它的currentTime属性后跟踪? 提前致谢,

NSURLConnection返回只有英语作为语言的NSError?

如果我打开我的iPad上的飞行模式,并试图使NSURLConnection我会得到一个错误“互联网连接似乎是脱机。 如果我更改为任何其他语言,那么我的iPad上的英文将仍然有相同的错误文本。 我不应该在当前select的语言中得到错误吗? 使用这个代码: – (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { NSLog(@"Error: %@",[error localizedDescription]); }

iPhone用户界面与T​​ableview或滚动查看?

我想知道什么是iOS开发的最佳实践,当涉及到build立一个特定的屏幕的用户界面。 由于可以为tableviews创build自定义单元格,因此可以使用tableview来创build任何您想要的布局/ UI。 这导致我的问题: 一般来说,当在一个iPhone应用程序上创build一个屏幕的内容比单个屏幕上的内容更多时,最好是使用scrollview并将自定义视图加载到scrollview中,或者创build一个tableview并使用自定义视图是自定义的tableview单元格? 最后,似乎你可以达到完全相同的视觉效果,但最佳做法是什么。 如果使用tableview或scrollview构build特定的可滚动屏幕,我很难告诉应用程序已下载。 在HTML中,只能使用元素来显示表格数据,而不能用于布局和样式目的。 在iOS中是这样吗? 使用tableviews进行布局的目的是不好的做法(例如,一个应用程序的主屏幕上列出的button去应用程序的其他部分)? 提前欢呼。

参考计数块中的自我

我试图让我的脑海如何对象生命周期和引用计数与代码块交互。 在下面的代码中,我只是做一个简单的animation,当UINavigationController的堆栈上的顶视图交换时闪烁。 棘手的部分是popup的视图控制器是定义这个代码的地方 。 [UIView animateWithDuration:0.2 animations:^{self.navigationController.view.alpha = 0.0;} completion:^(BOOL finished){ UINavigationController *navController = self.navigationController; [self.navigationController popViewControllerAnimated:NO]; [navController pushViewController:nextView animated:NO]; [nextView release]; [UIView animateWithDuration:0.2 animations:^{navController.view.alpha = 1.0;}]; }]; 我的问题是(忽略什么animation看起来像),这是从内存pipe理的angular度来做这件事的正确方法。 尤其是: (1)在pop + push循环中使用这种方法时,正确的是不再需要保留自己,就像其他类似的不使用块的例子一样? (2)是否调用animateWithDuration:…这些块保留定义视图控制器(自我),直到块执行?

我们可以在iOS设备上使用Mapkit框架在Google地图上显示KML数据吗?

我有一个要求,我必须显示一些地图和相应的地图的一些数据。 问题是后端服务器使用MapXtreme来生成GIS数据,而iOS设备没有MapX客户端。 服务器的人告诉我,他们可以发送给我KML文件来生成地图。 有什么方法可以使用KML文件在Google地图上使用Mapkit框架显示地理信息? 编辑:我在这个链接经历了类似的问题。 在其中的一个答案vy32共享一个谷歌地球教程网站的链接来创build一个KML文件。 他还认为它可以在Mapkit中使用。 问题仍然存在…我们该怎么做?

asynchronous调用使用IOS的方法4

我想asynchronous调用一个方法。 这是从服务器获取HTML并将其设置为UIWebView的一种方法: NSString *htmlTest = [BackendProxy getContent]; [webView loadHTMLString:htmlTest baseURL: nil]; [webView setUserInteractionEnabled:YES]; 我想在数据提取期间在UIWebView中启动一个活动指示器,所以我需要以asynchronous方式调用getContent 。 我怎样才能做到这一点?

在iOS上启动一个位置感知的后台服务

应用程序可以注册重大的位置更改 。 (推荐)重大变更的位置服务提供低功耗的方式来接收位置数据,强烈build议不要求高精度位置数据的应用程序。 有了这项服务,只有当用户的位置变化很大时才会生成位置更新; 因此,对于向用户提供非关键的位置相关信息的社交应用程序或应用程序而言,这是理想的。 如果应用程序在发生更新时暂停,系统会在后台将其唤醒以处理更新。 如果应用程序启动该服务,然后终止,则当新位置变为可用时,系统自动重新启动应用程序 。 此服务仅适用于包含蜂窝无线电的设备,适用于iOS 4及更高版本。 从http://developer.apple.com/library/ios/#DOCUMENTATION/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html 一个应用程序可以重新启动时,位置的变化。 但是,手机启动时可以自动启动吗? 文件不是很清楚。

如何使用eventKit框架为特定date设置提醒(警报)

我正在iOS 5中使用EventKit框架,并使用下面的代码成功地将事件添加到iOS日历 EKEventStore *eventDB = [[EKEventStore alloc] init]; EKEvent *myEvent = [EKEvent eventWithEventStore:eventDB]; myEvent.title = @"New Event"; myEvent.startDate = [[NSDate alloc] init]; myEvent.endDate = [[NSDate alloc] init]; myEvent.allDay = YES; [myEvent setCalendar:[eventDB defaultCalendarForNewEvents]]; 现在我该如何为这个事件添加警报(提醒)? 感谢Ranjit

一个方法怎么能告诉哪个视图控制器调用它

我想在我自己的方法中获取当前的视图控制器。 我的意思是我有两个视图控制器调用相同的方法。 在这一点上,我想分化从哪个视图控制器类正在调用该方法。 请帮我一下