UIScrollView 中的 UIButton 触摸延迟

UIButton touch is delayed when in UIScrollView(UIScrollView 中的 UIButton 触摸延迟)
本文介绍了UIScrollView 中的 UIButton 触摸延迟的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我的应用遇到了一个小问题.

I'm running into a small issue in my app.

我本质上在 UIScrollView 中添加了一系列 UIButtons 作为子视图,该 UIScrollView 是 nib 的一部分.每次我点击一个按钮时,在按钮被突出显示之前都会有一个明显的延迟.在按钮变暗并显示为选中之前,我基本上必须按住它大约半秒钟.

I essentially have a series of UIButtons added as subviews in a UIScrollView which is part of a nib. Every time I tap on a button there is a noticeable delay before the button is highlighted. I essentially have to hold it for about half a second before the button dims and appears selected.

我假设这是因为 UIScrollView 需要确定触摸是滚动还是用于子视图的触摸.

I'm assuming this is because the UIScrollView needs to determine if the touch is a scroll or if it's a touch that is meant for a subview.

无论如何,我有点不确定如何进行.我只是希望按钮在我点击后立即显示为选中状态.

Anyways, I'm a little unsure on how to proceed. I simply want the button to appear selected as soon as I tap it.

感谢任何帮助!

我尝试将 delaysContentTouches 设置为 NO,但滚动几乎变得不可能,因为我的大部分 scrollView 都充满了 UIButtons.p>

I've tried setting delaysContentTouches to NO but scrolling becomes almost impossible since a majority of my scrollView is filled with UIButtons.

推荐答案

好的,我已经通过继承 UIScrollView 并覆盖 touchesShouldCancelInContentView

Ok I've solved this by subclassing UIScrollView and overriding touchesShouldCancelInContentView

现在我的 UIButton 被正确标记为 99 高亮并且我的滚动视图正在滚动!

Now my UIButton that was tagged as 99 highlights properly and my scrollview is scrolling!

myCustomScrollView.h:

@interface myCustomScrollView : UIScrollView  {

}

@end

myCustomScrollView.m:

@implementation myCustomScrollView

    - (BOOL)touchesShouldCancelInContentView:(UIView *)view
    {
        NSLog(@"touchesShouldCancelInContentView");

        if (view.tag == 99)
            return NO;
        else 
            return YES;
    }

这篇关于UIScrollView 中的 UIButton 触摸延迟的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

UIButtons at the bottom of UIScrollView not working(UIScrollView 底部的 UIButtons 不起作用)
scrollViewWillEndDragging:withVelocity:targetContentOffset: not working on the edges of a UISCrollView(scrollViewWillEndDragging:withVelocity:targetContentOffset: 不在 UISCrollView 的边缘工作)
ImageView Scaling when scrolling down(向下滚动时 ImageView 缩放)
Bounds automatically changes on UIScrollView with content insets(UIScrollView 上的边界自动更改,带有内容插图)
iOS5 UITapRecognizer for UIScrollView interfering with buttons. How to fix?(用于 UIScrollView 的 iOS5 UITapRecognizer 干扰按钮.怎么修?)
Handling scroll views with (custom, interactive) view controller presentation and dismissal(使用(自定义、交互式)视图控制器呈现和解除处理滚动视图)