0

使用以下代码

-(IBAction)shareMenuBtnPressed:(id)sender
{
    [self.mainMenuView setHidden:YES];
    [self.tryOnView setHidden:YES];
    [self.d3View setHidden:YES];

    if ([self.shareView isHidden] == YES)
        [shareView setHidden:NO];
    else
        [self.shareView setHidden:YES];
}

在第一次点击它显示菜单即 [shareView setHidden:NO]; 但如果我再次点击它再次运行相同的序列。为什么 isHidden 没有变为 NO

编辑:好的,看来我已经放置了这段代码

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideAllViews)];
    //tap.cancelsTouchesInView = NO;
    [self.view addGestureRecognizer:tap];

它的tap.cancelsTouchesinView行为很奇怪,并且 [shareView setHidden:NO] 总是被调用。atm 我已经发表了评论,但我无法删除tap.cancelsTouchesinView.应该做什么?

4

1 回答 1

1

不需要写下面的代码...

  if ([self.shareView isHidden] == YES)
    [shareView setHidden:NO];
else
    [self.shareView setHidden:YES];

而是写下面的代码......

self.shareView.hidden = !self.shareView.hidden;

我想它会对你有很大帮助...

让我知道它是否有效,我的朋友!!!!

快乐的编码......

于 2013-10-09T10:38:19.320 回答