我认为iOS 7的MKMapSnapshotter将是一个简单的方法来拍摄一个MKMapView的快照,好处是你可以做到这一点,而无需将地图加载到视图中。 即使看起来更多的工作来添加引脚和覆盖(因为需要核心graphics)。 WWDCvideo给出了创buildMKMapSnapshotter并添加MKAnnotationView一个很好的例子。 然而,对于没有太多核心graphics体验的人来说,如何从MKPolylineRenderer创build一个MKMapSnapshotter并不是很明显。 我试图做到这一点,但path是不准确的。 它准确地绘制了约10%的线,但是直接绘制了其余的path。 这是我的代码: MKMapSnapshotter *snapshotter = [[MKMapSnapshotter alloc] initWithOptions:snapshotOptions]; [snapshotter startWithQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) completionHandler:^(MKMapSnapshot *snapshot, NSError *error) { if (error == nil) { UIImage *mapSnapshot = [snapshot image]; UIGraphicsBeginImageContextWithOptions(mapSnapshot.size, YES, mapSnapshot.scale); [mapSnapshot drawAtPoint:CGPointMake(0.0f, 0.0f)]; CGContextRef context = UIGraphicsGetCurrentContext(); //Draw the points from the MKPolylineRenderer in core graphics for mapsnapshotter… MKPolylineRenderer *overlay […]
我在iOS 7上,我有以下问题。 好奇的研究后我找不到线索 我有左和右附件的地图视图注释,但在中间透明(我认为默认的iOS 7行为)。 如何将默认的半透明/透明背景更改为我想要的任何其他颜色?
我在XCode 6.1中收到以下警告 。 属性不可用:8.0版本之前的iOS版本的第一个基线布局属性 我想,这也导致我的iOS 7.x版本崩溃 。
自iOS 7更新以来,录制应用程序发生了一些变化。 我有一个应用程序,曾经与iOS 5和6,但当我试图在iOS 7上运行它 – 录音没有回应。 我查了一下互联网,看到有一个需要调用的新方法。 我试图把这个代码放在viewDidAppear中: if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { if([[AVAudioSession sharedInstance] respondsToSelector:@selector(requestRecordPermission:)]) { [[AVAudioSession sharedInstance] requestRecordPermission:^(BOOL granted) { NSLog(@"permission : %d", granted); }]; } } “授予”始终是1,虽然我没有授予任何许可,也没有看到任何请求popup。 顺便说一句我想要处理这个使用Xcode 4.6.3。 我用requestRecordPermission方法为AVAudioSession做了一个类,因为这个方法只在iOS 7中可用。 谢谢。
我想制作一个只使用[return]键的UIKeyCommand 。 到目前为止我已经尝试过: UIKeyCommand *selectCommand = [UIKeyCommand keyCommandWithInput:@"\n" modifierFlags:0 action:@selector(chooseSelection:)]; input键没有全局常量,就像UIResponder.h上,下,左,右和转义一样: // These are pre-defined constants for use with the input property of UIKeyCommand objects. UIKIT_EXTERN NSString *const UIKeyInputUpArrow NS_AVAILABLE_IOS(7_0); UIKIT_EXTERN NSString *const UIKeyInputDownArrow NS_AVAILABLE_IOS(7_0); UIKIT_EXTERN NSString *const UIKeyInputLeftArrow NS_AVAILABLE_IOS(7_0); UIKIT_EXTERN NSString *const UIKeyInputRightArrow NS_AVAILABLE_IOS(7_0); UIKIT_EXTERN NSString *const UIKeyInputEscape NS_AVAILABLE_IOS(7_0); 还有什么我可以尝试捕获返回/input密钥?
我正在iOS 7应用上testingGoogle Places API。 当我向API发送一个请求时,我得到一个json结果,并显示以下错误消息: This IP, site or mobile application is not authorized to use this API key. 为了构build请求,我去了Google API控制台,并根据我的应用程序包生成了我的iOS API密钥。 我没有使用Google地图或应用中的其他任何内容,只是试图向Places API发送请求。 有什么我失踪? PS:我复制了我正在使用的URL,并将API密钥更改为浏览器客户端密钥,并在Chrome中进行了testing,并且工作完美。
我有一个在iOS 6上完美运行的应用程序。我已经用这种方法为UISlider的拇指设置了一个闪烁的效果: -(void)startBlinkingSlider{ isSliderBlinking = YES; isSliderTinted = NO; [self performSelector:@selector(toggleSliderColor) withObject:nil afterDelay:0.2]; } -(void)toggleSliderColor{ if(isSliderBlinking){ if(isSliderTinted){ self.effectAmountSlider.thumbTintColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:1]; }else{ self.effectAmountSlider.thumbTintColor = [UIColor colorWithRed:255 green:0 blue:0 alpha:1]; } isSliderTinted = !isSliderTinted; [self performSelector:@selector(toggleSliderColor) withObject:nil afterDelay:0.2]; } } -(void)stopBlinkingSlider{ isSliderBlinking = NO; isSliderTinted = NO; self.effectAmountSlider.thumbTintColor = [UIColor colorWithRed:0 green:0 blue:0 […]
有没有办法在iOS 7中调整UITabBar徽章的位置? 徽章现在阻止标签栏图标比我想要的多一点。 iOS 6: IOS 7:
我想在alertView中更改消息文本和标题文本的字体大小。 在苹果网站上没有关于此的文档,但是苹果在他们的子类注释中说“UIAlertView类是为了原样使用”。 请参考下面的链接。 https://developer.apple.com/library/ios/documentation/uikit/reference/UIAlertView_Class/UIAlertView/UIAlertView.html 如果更改警报视图文本大小是要避免的或可以更改的,我真的很困惑吗? 任何人都可以告诉我什么是这个最好的做法? 如果文本大小可以改变,你是否也可以提供一些方法来做到这一点?
我正在做一个应用程序,对外设断开作出反应,我现在正在尝试采用iOS 7中引入的ne状态保存和恢复。 我做了一切像文档说的,意思是: 我为中央添加了背景模式。 我总是使用相同的唯一标识符来实例化我的中央pipe理器。 我实现了centralManager:willRestoreState:方法。 当我的应用程序移动到后台时,我用kill(getpid(), SIGKILL);在AppDelegatecallback中杀死它kill(getpid(), SIGKILL); 。 ( 核心蓝牙状态保持和恢复不工作,不能重新启动应用程序到后台 ) 当我现在通过删除电池断开外设我的应用程序正在被唤醒如预期和launchOptions[UIApplicationLaunchOptionsBluetoothCentralsKey]包含正确的标识符,但centralManager:willRestoreState:未被调用。 只有当我断开另一个外设时,这个方法才被调用。