如何在目标 c 中具有某些标签的特定标签上应用 UITapGestureRecognizer
Posted
技术标签:
【中文标题】如何在目标 c 中具有某些标签的特定标签上应用 UITapGestureRecognizer【英文标题】:How to apply UITapGestureRecognizer on a specific label having some tag in objective c 【发布时间】:2017-05-09 05:55:33 【问题描述】:我在一个循环中有 4 个标签,我想在每个标签上分别应用 UITapGestureRecognizer
以执行一些操作,如果我只想在带有标签 2 的标签上应用手势,我怎么能得到这些东西,请帮忙。
for(int i = 0 ; i < 4; i++)
label = [[UILabel alloc] initWithFrame:rect1];
label.tag = LABEL_TAG+i;
label.textAlignment = NSTextAlignmentCenter;
label.backgroundColor = [UIColor grayColor];
label.textColor = [UIColor whiteColor];
label.font = [UIFont fontWithName:@"Verdana-Bold" size:17.0];
label.text = @"someText";
[label sizeToFit];
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(gotTapped:)];
[self viewWithTag:LABEL_TAG+2 addGestureRecognizer:tap];
【问题讨论】:
【参考方案1】:You only need to add UITapGestureRecognizer on each label.
for(UIlabel *label in cell.contentViews.subviews)
if(label.tag == 1)
UITapGestureRecognizer *tap=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAction)];
[tap setNumberOfTapsRequired:1];
[label addGestureRecognizer:tap];
【讨论】:
但我没有使用任何 tabelView 您可以简单地在标签上添加一个不可见的按钮。我希望这个技巧能帮到你。 这种情况下的单元格是什么? UItableview 的单元格。 然后只需在一个数组中取四个标签。在 Array 的索引 2 处,您可以添加点击手势。而在其他人你只需跳过循环。你应该从 1 到 4 运行循环。以上是关于如何在目标 c 中具有某些标签的特定标签上应用 UITapGestureRecognizer的主要内容,如果未能解决你的问题,请参考以下文章