Tag: uigesturerecognizer

iOS:两个手势,一个目标 – 行动

我正在实施消息应用程序复制消息function。 您可以双击或长按消息来复制它。 我怎么做? 我正在考虑添加两个手势识别器的视图,一个UITapGestureRecognizer ( numberOfTapsRequired设置为2 )和一个UILongPressGestureRecognizer 。 他们都会有相同的目标和行动。 然后,我想为他们每个人,我打电话requireGestureRecognizerToFail:传递另一个手势识别器。 我的想法是否正确? 有什么我失踪,还是有更好的方法来做到这一点?

结合轻扫和长按

我试图在我的ViewController(它有一个tableView)两个手势识别器,必须一个接一个地工作。 第一个是向下滑动手势,第二个是长按手势。 这是我的代码修改@sergiobuild议 – (void)viewDidLoad { [super viewDidLoad]; swipeDown = [[[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swipeDownAction)] autorelease]; longPress = [[[CustomLongPress alloc]initWithTarget:self action:@selector(longPressAction)] autorelease]; longPress.minimumPressDuration = 2; swipeDown.numberOfTouchesRequired = 1; swipeDown.direction = UISwipeGestureRecognizerDirectionDown; swipeDown.delegate = self ; longPress.delegate = self ; [myTableView addGestureRecognizer:swipeDown]; [myTableView addGestureRecognizer:longPress]; } -(void)swipeDownAction { _methodHasBeenCalled = YES; // bool @property declared in .h NSLog(@"Swipe down […]

我可以传递一个捏手势识别器到一个滚动视图让它缩放?

我为我的ScrollView's缩放编写了一个自定义的捏手势识别器,我在我的视图控制器中处理一个方法中的捏手势。 但在某些情况下,我希望ScrollView的行为与通常的行为完全一样(如果使用了ScrollView附带的标准缩放手势识别器)。 有没有办法,在这种情况下,我可以将我的自定义手势识别器传递给ScrollView ,它会使用该识别器像通常那样缩放视图? 我可以将手势识别器传递给由捏合动作触发的select器吗?

如何给skView添加一个手势?

我需要在游戏中添加几个滑动手势。 从我所知道的,这只能以编程的方式完成,不幸的是我从来没有用这种方式添加手势,我一直使用IB。 我知道我需要初始化一个手势识别器,使用initWithTarget:action:我知道如何设置它的属性,我不知道如何使这个手势做的东西。 我认为这是通过行动参数@select器,但似乎永远不会被调用。 我做错了吗? 这是我所拥有的: UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(animateSwipeRightLeft)]; [self.view addGestureRecognizer:swipeRight]; 并为select器我有: -(void)animateSwipeRightLeft { //do stuff… } 所以这涉及到一些相关的问题:我正确地设置了这一点? 如果是这样,为什么我的select器不被调用? 如果我不能用IB来做这件事,怎么办? 另外,如果有帮助,我的手势在我的场景的initWithSize方法中设置。

将UIGestureRecognizer添加到UILabel的单个字母

现在我正在做一个iOS应用程序,我想通过简单的“删除字母”来实现删除UILabel中的字母的function。 我遇到的问题是将一个手势识别器添加到UILabel的单个字母中。 我已经search了这个网站,没有任何东西。只是要清楚,我不是添加一个手势识别器的整个标签,我只想要将其添加到单个字母。 任何帮助是极大的赞赏。 谢谢

如何确定滚动UITableView的触摸次数

我试图确定- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView被称为&执行相应的任务时,在UITableView手指触摸的数量。 我迄今为止尝试的两种方法是: inheritanceUITableView覆盖touchesBegan:withEvent: – 这种方法的问题是,只有当屏幕上有一些“点击”,而不是当用户只是快速滚动而不用手指rest时,就会触发这个方法。 使用uipangesturerecognizer来检测触摸的次数。 – 我用以下方式使用它: UIPanGestureRecognizer *taps = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; taps.maximumNumberOfTouches=4; taps.minimumNumberOfTouches=1; [self.tableView addGestureRecognizer:taps]; 接着 -(void)handleTap:(UITapGestureRecognizer *)sender{ if (sender.state == UIGestureRecognizerStateBegan) { NSLog(@"BEGAN – %d",sender.numberOfTouches); } } 虽然我可以通过这种方法获得触摸次数,但是问题在于它正在覆盖实际的滚动(正常滚动不会发生)。 请提出我错在哪里或者应该做些什么。 谢谢!

添加滑动手势以显示详细视图中的下一个项目 – 修订

这是我以前的问题添加滑动手势显示在详细视图中的下一个项目 我以前问过这个问题,但不知道如何更新我的进度。 我遵循了一些build议,但现在我又被卡住了。 我想现在向目标视图控制器添加滑动手势,以便我可以到达下一篇文章,而不必返回到主页面。 我已经添加了以下设置手势以及一个函数加载数组中的项目。 所有这些数据已经通过segue传递给ViewController -(IBAction)swipeHandler:(UISwipeGestureRecognizer *)gesture{ { [self loadArticleForIndex:_articleListsports.count]; NSLog(@"SWIPE"); NSLog(@"Found %d character(s).", [_articleListsports count]); } – (void)loadArticleForIndex:(int)index { //draw ur article or load your webview. if(index>0 && index <[_articleListsports count]) { //self.targetURL = selectedCell.targetURL; self.sdesc = self.sportsdescription.text; self.stitle = self.sportstitle.text; self.simage = self.sportsimage.image; self.scat = self.sportscategory.text; self.sdate = self.sportsdate.text; } } – […]

目标C:UILongPressGestureRecognizer错误

我正在尝试把我的scrollView UILongPressGestureRecognizer,但它不工作。 长时间触摸后出现错误:“线程1:程序接收信号SIGABRT” 在这里我的代码: – (void)viewDidLoad { [super viewDidLoad]; longPressToDrag = [[UILongPressGestureRecognizer alloc] initWithTarget:scrollView action:@selector(forLongPress:)]; longPressToDrag.minimumPressDuration = 3.0; [scrollView addGestureRecognizer:longPressToDrag]; [self pages]; } – (void)forLongPress:(UILongPressGestureRecognizer *)gestureRecognizer { NSLog(@"Long Touch"); } 我在这里有错误: int main(int argc, char *argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); //<— Thread 1: Program received signal "SIGABRT" } }

如何将uigesturerecognizer添加到UIDocumentInteractionController预览?

是否可以添加手势识别器到UIDocumentInteractionController ? 现在我无法在UIDocumentInteractionController预览中添加任何内容。 请帮助如何添加手势识别器,甚至UIDocumentInteraction控制器顶部的button?

触摸appDelegate中的事件

这是我的问题。 我已经在我的应用程序中实现推送通知,它工作得很好。 该应用程序收到一条消息 在appDelegates中捕获:didReceiveRemoteNotification 创build一个新的UIView来显示接收到新消息 唯一的问题是,我希望用户能够点击消息,以便应用程序将打开消息viewcontroller。 但我似乎无法弄清楚如何捕捉这个触摸,然后在appDelegate中做些什么。 我有一个NSLog的方法,应该打开新的viewcontroller,但似乎从来没有被调用。 任何帮助,将不胜感激! 这是代码,它在didReceiveRemoteNotification方法中: UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(gotoMessages)]; UIView *messageView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 45)]; messageView.userInteractionEnabled = YES; messageView.backgroundColor = [UIColor darkGrayColor]; [messageView addGestureRecognizer:recognizer]; [self.window addSubview:messageView]; 谢谢!