当前位置: 首页 > 面试题库 >

将UITapGestureRecognizer添加到UITextView而不阻止textView触摸

云星波
2023-03-14
问题内容

如何将a添加UITapGestureRecognizer到UITextView,但仍然UITextView往常 一样通过触摸?

当前,一旦我将自定义手势添加到textView中,它就会阻止对UITextView默认操作(如定位光标)的点击。

var tapTerm:UITapGestureRecognizer = UITapGestureRecognizer()

override func viewDidLoad() {
    tapTerm = UITapGestureRecognizer(target: self, action: "tapTextView:")
    textView.addGestureRecognizer(tapTerm)
}

func tapTextView(sender:UITapGestureRecognizer) {
    println("tapped term – but blocking the tap for textView :-/")
…
}

我该如何处理点击,但保持所有textView行为(如光标定位)不变?


问题答案:

为此,使您的视图控制器采用UIGestureRecognizerDelegate,并且重写应与手势识别器方法同时识别,例如:

override func viewDidLoad() {
    tapTerm = UITapGestureRecognizer(target: self, action: "tapTextView:")
    tapTerm.delegate = self
    textView.addGestureRecognizer(tapTerm)
}

func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {

    return true
}


 类似资料:
  • 问题内容: 我使用tap事件的时间非常敏感,因此我很好奇是否有可能在用户简单按下时激活UITapGestureRecognizer,而不是要求他们同时按下吗? 问题答案: 创建您的自定义TouchDownGestureRecognizer子类,并在touches中实现手势。 TouchDownGestureRecognizer.h TouchDownGestureRecognizer.m 实施:

  • 问题内容: 我有一个问题,我不知道如何将textview添加到gridlayout。我有一个xml: 并希望动态地执行此xml代码。我怎样才能做到这一点?我知道如何创建textview,但我不知道如何添加到gridlayout … 问题答案: 您不能将代码粘贴到其中,并且需要对其进行测试和更改以使其适合(它不仅会起作用)。但这应该给您大致的想法。

  • 问题内容: 我试图在代码中添加到xml定义的布局中。我有一个xml工作表,其中定义了很多。但是我必须在代码中添加一些视图,因此在中创建一个: 在这种布局中,我想添加我的: 但是我只收到以下错误消息: 我该怎么做? 问题答案: 尝试使用 还请确保你正在创建的布局参数是LinearLayout.LayoutParams …

  • 问题内容: 我正在编写一个程序,它将监视特定目录中包含下载URL的新文件。一旦检测到新文件,它将在父级继续监视目录的同时创建一个新过程来进行实际下载。我正在使用来自的界面。我的问题是,除非我调用process.join(),否则子进程仍在运行,但是process.join()是一个阻止函数,无法实现创建子进程来处理实际下载的目的。 我的问题是,是否有一种以非阻塞方式加入子进程的方法,该方法将允许父

  • 我有一个模型类,如下所示: 以及控制器中显示输出的方法: 它确实显示了一个输出,一切都很好: 我想计算每个公司的评级,同时向最终用户显示数据。因此,输出应如下所示: 是否可以将评级列动态添加到公司列表中,或者我应该在数据库中创建评级列,在控制器中更新其方法,迭代findAll()结果,并在用户每次尝试访问/列表endpoint时调用它?

  • 问题内容: 我有一个用XML定义的ViewGroup,里面有一个视图,在onCreate时我想拥有一个变量。 我不想经历使用listview + adapter的麻烦,因为我知道列表不会更改,因为onCreate() 这显然是过大的杀伤力,这或多或少是我想要的代码。 但这是行不通的。 问题答案: 也许使用充气机,然后将textview放在外部布局文件中: