我已经在导航栏上放置了一个图像(UIImageView)。 现在我想检测触摸事件,并想要处理事件。 你能让我知道我该怎么做? 谢谢。
屏幕上的当前UIViewController需要响应来自APN的推送通知,通过设置一些徽章视图。 但是我怎么能得到方法application:didReceiveRemoteNotification的UIViewController application:didReceiveRemoteNotification :的AppDelegate.m ? 我尝试使用self.window.rootViewController获取当前显示的UIViewController ,它可能是一个UINavigationViewController或其他types的视图控制器。 我发现UINavigationViewController的visibleViewController属性可以用来获取屏幕上的UIViewController 。 但是,如果不是UINavigationViewController我该怎么办? 任何帮助表示赞赏! 相关的代码如下。 AppDelegate.m … – (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { //I would like to find out which view controller is on the screen here. UIViewController *vc = [(UINavigationViewController *)self.window.rootViewController visibleViewController]; [vc performSelector:@selector(handleThePushNotification:) withObject:userInfo]; } … ViewControllerA.m – (void)handleThePushNotification:(NSDictionary *)userInfo{ //set some badge view here }
iOs是否在内存pipe理中使用不连续的或连续的分配? 假设用户分配超过128 MB,请closures应用程序吗? 或内存将由iOSpipe理,就好像用户分配内存并错过deallocate方法释放? 是否有可能在使用定义良好的数据结构分配的应用程序中使用超过120 MB?
所以我跟着这个线程: RootViewController切换过渡animation来将window.rootViewController从A传递到B到C.代码如下所示: [UIView transitionWithView:self.window duration:0.5 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^{ self.window.rootViewController = newViewController; } completion:nil]; 问题是我的应用程序只能支持风景,但在rootViewController转换期间,新的视图控制器以纵向模式出现,而不是快速旋转到横向模式。 我确定: 我已经将UISupportedOrientation设置为横向(主页右键) 对于每个viewcontroller,在shouldAutoRotateToOrientation方法中,我只为横向设置 还有什么原因呢?
是否可以编写一个专为iOS设备(iPad,iPhone,iPod Touch)devise的HTML5 Web应用程序,该应用程序可以允许用户从文件系统上传图像? 想象一下,通过一个networking应用程序上传一张新照片到你的twitter头像。
请给出关于如何裁剪椭圆形或圆形UIImage想法。 请指导我
我已经看了很多类似的东西的post,但没有一个相当匹配或解决这个问题。 自iOS 7以来,每当我添加一个UIButton到一个UITableViewCell ,甚至到footerview,它的工作原理是“好的”,这意味着它接收到目标动作,但不会显示通常发生在您点击一个UIButton的小突出显示。 它使界面看起来很时髦,不会显示button对触摸的反应。 我敢肯定,这是iOS7中的一个错误,但任何人都find了解决scheme或可以帮助我find一个:) 编辑:我忘了提及,如果我长时间按住button,它会突出显示,但不是像刚刚添加到标准视图那样快速点击。 码: 创buildbutton: UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; button.titleLabel.font = [UIFont systemFontOfSize:14]; button.titleLabel.textColor = [UIColor blueColor]; [button setTitle:@"Testing" forState:UIControlStateNormal]; [button addTarget:self action:@selector(buttonPressed:) forControlEvents: UIControlEventTouchDown]; button.frame = CGRectMake(0, 0, self.view.frame.size.width/2, 40); 我testing过的东西: //移除UITableView上的手势识别器,以防止它们UITableView 。 for (UIGestureRecognizer *recognizer in self.tableView.gestureRecognizers) { recognizer.enabled = NO; } //从Cell中删除手势 for (UIGestureRecognizer *recognizer in self.contentView.gestureRecognizers) […]
在导航栏上按下后退button(返回到前一个屏幕,返回到父视图)时,我需要执行一些操作。 是否有一些方法可以实现捕捉事件并启动一些操作,以在屏幕消失之前暂停和保存数据?
我有一个MKMapView的实例,并希望使用自定义注释图标,而不是由MKPinAnnotationView提供的标准图钉图标。 所以,我设置了一个名为CustomMapAnnotation的MKAnnotationView的子类,并覆盖-(void)drawRect:绘制一个CGImage。 这工作。 当我尝试复制由.animatesDrop提供的.animatesDropfunction时遇到麻烦; 我喜欢我的图标逐渐出现,从上面,从左到右的顺序,当注释被添加到MKMapView实例。 这里是 – (void)drawRect:用于CustomMapAnnotation,它在你绘制UIImage(这是第二行所做的)时工作: – (void)drawRect:(CGRect)rect { [super drawRect:rect]; [((Incident *)self.annotation).smallIcon drawInRect:rect]; if (newAnnotation) { [self animateDrop]; newAnnotation = NO; } } 添加animateDrop方法时会遇到麻烦: -(void)animateDrop { CGContextRef myContext = UIGraphicsGetCurrentContext(); CGPoint finalPos = self.center; CGPoint startPos = CGPointMake(self.center.x, self.center.y-480.0); self.layer.position = startPos; CABasicAnimation *theAnimation; theAnimation=[CABasicAnimation animationWithKeyPath:@"position"]; theAnimation.fromValue=[NSValue valueWithCGPoint:startPos]; theAnimation.toValue=[NSValue valueWithCGPoint:finalPos]; theAnimation.removedOnCompletion = […]
我目前正在开发一个接收推送通知的应用程序。 我有这个所有的工作100%通过一个PHP页面。 我的应用可以接收几种不同types的推送通知。 PHP处理这个,并发送不同的信息包到我的应用程序,都收到了很好。 但是,当用户“查看”通知和我的应用程序启动时,我显然希望采取与用户刚刚手动启动应用程序的操作不同,并根据推送通知types采取不同的操作。 我有这个工作很好…在结构上。 我的一个推式types应该是打开一个UIView,它与几个不同的服务器进行多个连接并来回地协商数据。 这个UIView工作正常,例如,从主菜单触发 – 但是当我的推送通知触发此UIView出现时,套接字连接不按预期行事。 现在我的问题不是关于套接字,而是更多 – 你怎么debugging这样的问题? 从我可以告诉(我相对较新),当从推送通知启动的应用程序无法将该执行链接到debugging器/控制台/等等…我有一个非常困难的时间试图debugging代码UIAlertViews,因为在各种服务器之间有许多来回的通信线路。 任何build议你对我来说将不胜感激。