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 に答える