我想要一个按钮,比如早上8点就可以使用。我知道如何在加载视图时检查按钮是否可用,但是,如果用户在时钟转到上午8点时查看按钮,如何在不加载视图的情况下使按钮变为活动状态?
答案 0 :(得分:2)
按钮应始终存在。使用其hidden
隐藏并根据需要显示它。或者您可以根据需要使用其enabled
启用或禁用它,但这可能需要更多工作,因为禁用的按钮可能不会自动看起来已禁用,因此用户将无法理解它并非真正“可用”。
因此我们有三个案例要处理:
用户移动到此视图控制器,视图控制器加载其视图,您的代码决定按钮状态/可见性现在。你已经处理了这个。
视图控制器已经存在且视图可见,并且可用性更改时刻到来。在这种情况下,您需要先设置一个通知,以提示视图控制器立即采取措施。 永远不要循环看时间。使用NSTimer或类似的(本地通知也值得考虑)。
视图控制器由另一个视图控制器覆盖,然后被覆盖。也许国家需要在此期间发生变化。因此,您还希望在viewWillAppear:
中进行此项检查,而不仅仅是viewDidLoad
。