2013-06-06 46 views
0

我有一个充当开关的UIButton。 当用户点击它时,其状态将变为“已选中”并且将调用动作“一”。当用户再次点击UIButton状态更改为“未选中”并且操作不再可用时。如何通过UIAction而不触摸UIButton

有没有办法通过绑在一个完全不同的UIButton设置为“入选”的UIButton并已将其改为“选择”,并调用相同的动作呢?

干杯

+0

plzz给你的问题描述清楚 – Kasaname

+0

你意味着你要调用同样的方法将两种不同的按钮点击。对? – Dilip

+1

所以你想要像这样伪造触摸事件:[如何以编程方式将触摸事件伪装成UIButton?](http://stackoverflow.com/a/4034034/593709) –

回答

0

当你轻触的UIButton做出了这一点,在该按钮的操作的操作简单的事情,你可以将按钮的状态设置为选中状态,然后在代码就可以调用下一行方法(动作)

- (IBAction)btn1Touched:(id)sender { 
    [_btn2 setSelected:YES]; 
    [self btn2Touched:self]; 
} 
- (IBAction)btn2Touched:(id)sender { 

    NSLog(@"btn Action called"); 
} 
0

尝试这样的,”

-(IBAction)nextbutton:(id)sender{ 
    UIButton *btn=(UIButton *)[self.view viewWithTag:tagValue];//pass tag value of that particuler button 
    btn.selected=YES; 
    //do whatevr you want. 

    } 
1

从我从这个问题的理解,我想给你我的建议

if (!<your_button>.selected) 
{ 
    <your_button>.selected = YES; 
    // do your stuff here 
} 
else 
{ 
    <your_button>.selected = NO; 
    // do your stuff here, in your case action should be no longer available so that, 
    <your_button>.userInteractionEnabled = NO; 
} 

享受编程!

+0

谢谢,但它实际上并不适用于我想要做的事情。 –

0

的UIButton已经状态称为selected,它是通过属性selected

所以设法让一个按钮,选中状态

[buttonInstance setSelected:YES]; 

要选它使用

[buttonInstance setSelected:NO]; 
0

请写该按钮动作的功能类似于,

-(void)Buttonaction 

{ 

do your action here 

    also set your button has selected state. 

    buttonname.setselected=yes; 

} 

在标签按钮时调用此函数。

0

做到这一点:

-(IBAction)switchButtonClicked:(UIButton*)sender 
{ 

    if(sender.isSelected) 
     { 
     ..... 
     } 
    else 
     { 
     ... 
     } 
    [sender setSelected:!sender.isSelected];//This will work as Switch. 
} 

设置的UIButtonSelected(Switch ON)default(Switch OFF)财产(图像和标题)从XIB,或代码,只要你想。 随着一个按钮,你可以做你的功能与此代码