Tag: cocoa触摸

检查分离键盘

许多人都知道iOS 5引入了一个精巧的分离式键盘来进行拇指input。 不幸的是,我有一些依赖于正常的全屏键盘布局的用户界面。 我的一个视图控制器给用户提供了一个文本input表,如果他们点击到键盘覆盖的文本字段,它会随着键盘滑动。 分离键盘不需要此操作。 有没有办法在popup之前检查哪个键盘布局正在使用? 谢谢!

UIViewController旋转方法

什么对象负责对UIViewController旋转方法的调用,即: shouldAutorotateToInterfaceOrientation: willRotateToInterfaceOrientation:duration: willAnimateFirstHalfOfRotationToInterfaceOrientation:duration: willAnimateSecondHalfOfRotationFromInterfaceOrientation:duration: didRotateFromInterfaceOrientation: 我想这是UIApplication (但也许是AppDelegate或UIWindow)。 接下来的问题是,对象如何知道要与哪个UIViewController交谈? 它如何知道哪个UIViewController的视图作为窗口的子视图? 有没有一个消息,你可以发送或一个属性,你可以设置(的一些对象),为应用程序设置“活动” UIViewController ?

如何以编程方式绘制三angular形

我有一个三angular形求解器,我想要一个方法来使用我从答案中得到的值在与之匹配的屏幕上绘制一个三angular形。

UITableView添加单元格animation

任何一个可以帮助我与UITableViewanimation问题? 默认情况下,我们有用于删除单元格和重新sortingUITableView单元格的animation。 我们可以有animation添加单元格,如果是的话,怎么做。 我已经检查了Three20 ,并没有得到如何twitter已经做了MyProfile> ReTweets下的表扩展animation。 要使用UITableView的现有animation,不用Three20 frameowrk,来尝试它。

NSURLSession和亚马逊S3上传

我有一个应用程序,目前正在上传图像到亚马逊S3。 我一直在尝试从使用NSURLConnection切换到NSURLSession,以便上传可以继续,而应用程序在后台! 我似乎遇到了一些问题。 NSURLRequest被创build并传递给NSURLSession,但是如果我把相同的请求传递给一个NSURLConnection,那么它就会发回一个403禁止的响应。 这是创build响应的代码: NSString *requestURLString = [NSString stringWithFormat:@"http://%@.%@/%@/%@", BUCKET_NAME, AWS_HOST, DIRECTORY_NAME, filename]; NSURL *requestURL = [NSURL URLWithString:requestURLString]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:requestURL cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:60.0]; // Configure request [request setHTTPMethod:@"PUT"]; [request setValue:[NSString stringWithFormat:@"%@.%@", BUCKET_NAME, AWS_HOST] forHTTPHeaderField:@"Host"]; [request setValue:[self formattedDateString] forHTTPHeaderField:@"Date"]; [request setValue:@"public-read" forHTTPHeaderField:@"x-amz-acl"]; [request setHTTPBody:imageData]; 然后这个回应(我认为这是来自另一个SO回答): NSString *contentMd5 = [request valueForHTTPHeaderField:@"Content-MD5"]; NSString *contentType = […]

drawViewHierarchyInRect:afterScreenUpdates:延迟其他animation

在我的应用程序中,我使用drawViewHierarchyInRect:afterScreenUpdates:为了获得我的看法(使用苹果的UIImage类别UIImageEffects )的模糊图像。 我的代码如下所示: UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, 0); [self.view drawViewHierarchyInRect:self.view.bounds afterScreenUpdates:YES]; UIImage *im = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); /* Use im */ 我在开发过程中注意到,在使用我的应用程序一段时间后,我的许多animation被延迟了,也就是说,与刚刚启动的应用程序相比,我的视图在明显(但不到一秒)的停顿之后开始animation。 经过一些debugging,我发现仅仅使用drawViewHierarchyInRect:afterScreenUpdates:将屏幕更新设置为YES导致延迟。 如果这个消息在使用过程中从未被发送过,则延迟从未出现过。 屏幕更新参数使用NO也使延迟消失。 奇怪的是,这个模糊的代码是完全不相关的 (据我所知)的延迟animation。 有问题的animation不使用 drawViewHierarchyInRect:afterScreenUpdates:它们是CAKeyframeAnimationanimation。 发送此消息的单纯行为(将屏幕更新设置为YES )似乎已在全球范围内影响我的应用中的animation。 这是怎么回事? (我已经创build了video来说明效果: 有和没有animation延迟,请注意导航栏中“检查!”对话框出现的延迟。) UPDATE 我已经创build了一个示例项目来说明这个潜在的错误。 https://github.com/timarnold/AnimationBugExample 更新第2号 我收到苹果公司的回复,validation这是一个错误。 见下面的答案。

刷新UIPageViewController – 重新排列页面并添加新页面

我有一个UIPageViewController ,我正在提供使用UIPageControllerDelegate和UIPageControllerDataSource的实现的页面数据。 这一切都工作正常,但我希望能够添加项目的页面数据和重新sorting页面数据。 如果用户已经到了最后的页面,然后我添加一个项目,他们不能进入下一个页面,因为viewControllerAfterViewController:已经被调用。 如果他们回滚一个,然后转发两个,他们可以很好地到达新的页面,所以数据设置正确。 我怎么能告诉UIPageViewController刷新它的下一个存储? 同样,我想重新sorting支持页面视图的集合。 但是,如果我这样做,我会得到同样的问题 – 页面视图会认为下一页仍然是上次加载当前页面。 我想我正在寻找类似reloadData:在UITableView 。

用autoreverse UIViewanimation

我有设置UIViewAnimationOptionAutoReverse问题。 这是我的代码。 CALayer *aniLayer = act.viewToChange.layer; [UIView animateWithDuration:2.0 delay:1.0 options:(UIViewAnimationCurveLinear | UIViewAnimationOptionAutoreverse) animations:^{ viewToAnimate.frame = GCRectMake(1,1,100,100); [aniLayer setValue:[NSNumber numberWithFloat:degreesToRadians(34)] forKeyPath:@"transform.rotation"]; } completion:nil ]; 问题在于,在animation颠倒之后,视图跳回到animation块中设置的帧。 我希望这个观点能够成长并“放弃”,并停止在原来的位置上。 有没有编程两个连续的animation解决scheme?

在iOS中调用button调用电话号码

我想创build一个button,当按下时,将调用iPhone上的电话号码。 我不知道这是否可能,但如果是这样的话,我愿意有人帮助我。 我没有任何代码,所以有人需要帮助我从头到尾。

Quartz 2D drawRect方法(iPhone)

我有4种不同的iPhone / Cocoa / Core Animation / Objective-C书籍,还有很多来自networking的示例代码。 然而,不知何故,我仍然觉得我错过了一些关于如何在Quartz 2D中进行绘图的基本知识。 drawRect()意味着只是一个钩子来执行您的绘图代码? 或者,这种方法是否也应该重新绘制“已损坏”的区域,并且需要重新绘制? 我可以只画一次,然后“粘住”,或者我必须通过drawRect()随时重绘整个场景吗? Java的Graphics2D对象是这样工作的 – 每次调用paint()时都必须绘制整个“图像”,因此您必须随时准备重新构build它(或caching它)。 你将如何实现一个简单的绘图程序? 你将不得不“记住”用户绘制的每一行/点/笔画,并且每次调用drawRect()时drawRect()复制这个笔画? 如何“离屏”渲染; 你可以做所有的绘画,然后调用[self setNeedsDisplay]让你的写入刷新到屏幕上? 让我们说,为了响应用户的触摸,我想在他触摸的屏幕上放置一个“X”。 X应保持在那里,每个新的触摸产生另一个X.我是否需要记住所有这些触点坐标,然后将它们全部绘制在drawRect() ? 编辑: 除非我误解,joconor和Hector Ramos的回答是相互矛盾的。 这很好地certificate了我对这个问题的困惑。 🙂