有条件的 IBAction(如果生命 == 1 显示“购买额外生命”按钮)

Posted

技术标签:

【中文标题】有条件的 IBAction(如果生命 == 1 显示“购买额外生命”按钮)【英文标题】:Conditional IBAction (if lives == 1 display "Buy Extra Lives" button) 【发布时间】:2015-02-09 03:16:42 【问题描述】:

我目前有一个按钮 (IBAction),我正计划添加一个 IAP 功能,以便用户可以在生命即将用完时购买额外的生命,但在我超越自己之前,我想弄清楚如何仅在生活 == 1 时才显示此按钮,而没有其他时间。

经过数小时的研究和失败的尝试,我的结论是,是的,您可以使用 buttonName.hidden = Bool 隐藏按钮 (UIButton),并使用条件语句轻松打开/关闭它。

错误:(UIButton) ->() 没有名为 hidden 的成员。

但是,您无法使用 .hidden 轻松(或据我所知)做到这一点。我可以在按钮的属性检查器中清楚地看到“隐藏”复选框,如果我手动检查它,它至少会在运行应用程序时保持隐藏状态,但不知道如何使用条件代码调用它。

任何帮助将不胜感激!

【问题讨论】:

Working with IBOutlet properties in Xcode 【参考方案1】:

您将操作 (IBAction) 与出口 (IBOutlet) 混淆了。动作是您的按钮在被点击时运行的代码。出口是让您从代码访问按钮的地方。你需要一个出口。从您的视图控制器到您的按钮创建一个出口。我们称之为myButton。然后在viewWillAppear: 中决定是显示还是隐藏self.myButton,并相应地设置它的hidden

【讨论】:

我可能把这两个弄混了。我正在尝试使用按钮进行操作(按下按钮,弹出警报或发送到新视图),我一直使用 IBAction。 听取了您的建议,按钮与操作分开,我现在可以使用 .hidden 语句控制按钮可见性,我手动创建的单独 IBAction 然后附加到情节提要上的按钮处理 .alert行动。像我需要的那样工作,谢谢。

以上是关于有条件的 IBAction(如果生命 == 1 显示“购买额外生命”按钮)的主要内容,如果未能解决你的问题,请参考以下文章

组合条件查询的数据回显问题

有条件地切换 UIViewController

impl 上的第一个显式生命周期说明符是啥意思?

根据条件在 UI 上回显图像

是否允许显式调用析构函数,然后在具有固定生命周期的变量上放置 new?

IOS7笔记-5视图控制器生命周期