将手势识别器添加到空白标签
Add gesture recognizer to a blank label
我有一个自定义的 table 单元格子类,如下所示:
其中 "Date:" 和 "Hours:" 是 UIButton
,另外两部分是 UILabel
。我在几个不同的文件中使用单元格,以编程方式添加适当的选择器。对于 UILabel
s,我将它添加到视图控制器的 cellForRowAt
方法中,如下所示:
(cell as? DateHoursCell)?.dateLabel.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(dateLabelTap)))
当标签有文本时这工作正常,但有时我加载的数据有 nil 值,当这种情况发生时,点击标签没有任何作用。我怎样才能使它们即使没有文本也仍然可以点击?
我不确定这是否是你的问题,但当没有文字时,你的标签大小可能会变为 0。我会为它定义一个固定大小,或者甚至更好,制作一个固定大小的父 UIView,然后将标签添加到它,然后将手势识别器添加到父 UIView。
我有一个自定义的 table 单元格子类,如下所示:
其中 "Date:" 和 "Hours:" 是 UIButton
,另外两部分是 UILabel
。我在几个不同的文件中使用单元格,以编程方式添加适当的选择器。对于 UILabel
s,我将它添加到视图控制器的 cellForRowAt
方法中,如下所示:
(cell as? DateHoursCell)?.dateLabel.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(dateLabelTap)))
当标签有文本时这工作正常,但有时我加载的数据有 nil 值,当这种情况发生时,点击标签没有任何作用。我怎样才能使它们即使没有文本也仍然可以点击?
我不确定这是否是你的问题,但当没有文字时,你的标签大小可能会变为 0。我会为它定义一个固定大小,或者甚至更好,制作一个固定大小的父 UIView,然后将标签添加到它,然后将手势识别器添加到父 UIView。