我正在尝试为我的计算器应用创建一个“电源按钮”,用于打开/关闭计算器。我创建了按钮:
-(IBAction) *Power;
没有电源按钮,应用程序在LCD显示屏上以“0”开头,我的按钮全部工作;但是如何告诉我的应用程序LCD应显示“”并且按下电源按钮后才能操作按钮?一个简单的if-then函数会起作用吗?我可以在if-thens中放置 - (IBAction)按钮吗?
答案 0 :(得分:3)
创建一个BOOL property
,并检查所有YES
中的IBACtions
。
您需要在方法YES/NO
上将其设置为Power
,通常为:
使用NO
或init
中的viewDidLoad
与-(IBAction) power{
self.powerOn=!self.powerOn;
}
-(IBAction) otherMethod{
if(self.powerOn){
//do your stuff
}
}
初始化,以适用者为准。
-(IBAction) *Power;
此外,指针{{1}}的方法不是您需要的方法。
答案 1 :(得分:1)
1)声明一个变量来跟踪电源开/关
@property(nonatomic, assign) BOOL powerOn;
在viewDidLoad中
分配_powerOn = NO; or _powerOn = YES;
2)在电源按钮按下事件中,
-(IBAction) Power;{
//if on, then off
if(self.powerOn){
//make display ""
self.powerOn = NO;
}else{ //if off, the on
self.powerOn = YES;
//make display "0"
}
}
3)在所有其他按钮点击事件中添加以下行作为第1行
-(IBAction) otherMethod{
if(!self.powerOn) return;
//your code
}
答案 2 :(得分:1)
您需要为按钮创建IBOutlets,以便在运行应用程序时编辑它们的行为。 这些IBOutlet是这样创建的:
IBOutlet UIButton *myPowerButton;
您需要将它们与您在其中创建Outlet for的Interface Builder中的按钮链接。 在那里,您可以指定“已启用”'行为为YES或NO,因此您可以设置电源按钮来设置用户是否可以工作。 有关详细信息,请阅读有关IBOutlets和按钮的Apples文档。
答案 3 :(得分:0)
我会这样做,假设按钮的标题是Power:
-(IBAction) Power
{
if(self.powerOn)
{
//make display ""
self.powerOn = NO;
for (UIView* subView in self.view.subviews)
{
if ([subView isMemberOfClass:[UIButton class]] && subView.titleLabel.text != @"Power")
subView.userInteractionEnabled = NO;
}
}
else
{ //if off, the on
self.powerOn = YES;
//make display "0"
}
}
当关闭电源按钮时,我会禁用所有其他按钮的用户交互。