一键式隐藏按钮

时间:2012-04-11 06:52:45

标签: iphone objective-c ios xcode4.2

我想在一次触摸上隐藏按钮。当用户触摸按钮时,该按钮应该隐藏但只需一次触摸。按钮随机移动。移动按钮可以触摸隐藏。我已经做到了,但经过两次三次按压后,它才会被隐藏起来。我正在使用touchupinside事件。任何人都可以帮助我吗?

-(IBAction)clickButton1:(id)sender
{
    if (button1.tag==1)
    {
        button1.hidden=TRUE;
    }
    else
    {
        button1.hidden=FALSE;
    }
}
-(IBAction)clickButton2:(id)sender
{
    if(button1.hidden==TRUE && button3.hidden==FALSE) 
    {
        button2.hidden=TRUE;
    }
    else
    {
        button2.hidden=FALSE;
    }
}

提前致谢

3 个答案:

答案 0 :(得分:3)

使用此按钮touchUpInside替换您的代码

-(IBAction)hide:(id)sender
{
    UIButton *tmp = (UIButton *)sender;
    tmp.hidden = YES;
}

答案 1 :(得分:0)

用这个替换你的第一个IBAction方法:

 -(IBAction)clickButton1:(id)sender
{
  UIButton *button1 = (UIButton *)sender;
  if (button1.tag==1)
 {
   button1.hidden=TRUE;
 }
 else
 {
   button1.hidden=FALSE;
 }
}

答案 2 :(得分:0)

您可以使用循环

在viewDidLoad上创建按钮
-(void) viewDidLoad{
     for ( c = 0; c < 10; c++ ){
           Buttons[c] = [[UIButton alloc] init];
           Buttons[c].tag = c;
      }
}

之后,您可以使用以下代码控制show hide。

-(IBAction)yourActionMethod:(id)sender
{
    //your normal action codes here
    UIButton *tmp = (UIButton *)sender;
    if (tmp.tag == 0) {
          // some codes
    } else {....}

    //control buttons of the 

    for (int i = 0; i < tmp.tag; i++){
          Buttons[i].hidden = yes;
    }
    
}