相关疑难解决方法(0)

有没有办法在iPhone上通过触摸?

我有几个UIButton用于在主区域中点击时设置当前操作的s.我还想让用户直接从按钮拖动到主区域并采取相同的动作; 实质上,touchesBegan和touchesMoved应该在触摸UIButtons时传递到主视图,但也应该发送按钮按下动作.

现在,我在内部修改控制.拖动出口调用内部部分设置控件,然后调用触摸开始部分启动主区域触摸操作.

但是,此时,touchesMoved和touchesEnded显然没有被调用,因为触摸起源于UIButton.

有没有办法半忽略触摸所以它们被传递到主区域,但也允许我先设置控件?

iphone cocoa-touch

23
推荐指数
3
解决办法
2万
查看次数

覆盖UIGestureRecognizer touchesBegan

我有1个主视图和1 个子视图:

主视图> SubView

我认为主视图是从SubView "窃取"事件.

例如,当我点击SubView时,只有Main View GestureRecognizer会激活.

这是我的自定义GestureRecognizer(拦截每个触摸事件):

import UIKit
import UIKit.UIGestureRecognizerSubclass

class MainGestureRecognizer: UIGestureRecognizer {

    override func touchesBegan(touches: NSSet!, withEvent event: UIEvent!) {
        super.touchesBegan(touches, withEvent: event);
        //nextResponder() ??

        state = UIGestureRecognizerState.Began;
    }

    override func touchesMoved(touches: NSSet!, withEvent event: UIEvent!) {
        super.touchesMoved(touches, withEvent: event);
        //nextResponder() ??

        state = UIGestureRecognizerState.Changed;
    }

    override func touchesEnded(touches: NSSet!, withEvent event: UIEvent!) {
        super.touchesEnded(touches, withEvent: event);
        //nextResponder() ??

        state = UIGestureRecognizerState.Ended;
    }

    override …
Run Code Online (Sandbox Code Playgroud)

overriding touch-event swift

6
推荐指数
1
解决办法
4508
查看次数

标签 统计

cocoa-touch ×1

iphone ×1

overriding ×1

swift ×1

touch-event ×1