隐藏视图时如何禁用 UISlider 交互?
Posted
技术标签:
【中文标题】隐藏视图时如何禁用 UISlider 交互?【英文标题】:How to disable UISlider interaction when view is hidden? 【发布时间】:2014-03-22 14:08:45 【问题描述】:现在我有一个 UISlider,当按下按钮时我设置为隐藏,但如果我在按下按钮时与 UISlider 交互,滑块会消失,但我仍然可以移动值滑块。
我尝试在按下按钮时设置 UserIneractionEnabled = NO,但这似乎不起作用。
知道我应该如何禁用它吗?
编辑 * 我的代码 *
- (void)didPressButton:(UIButton *)button
if (!self.isShowingDetailView) //
self.showingDetailView = YES;
self.valueSlider.hidden = YES;
self.valueSlider.userInteractionEnabled = NO;
else
self.showingDetailView = NO;
self.valueSlider.hidden = NO;
self.valueSlider.userInteractionEnabled = YES;
【问题讨论】:
您确定 setUserIneractionEnabled 设置在滑块上,而不是在按钮上? 请输入您的按钮点击和滑块创建代码 【参考方案1】:一种解决方法是在按钮和滑块上设置 exclusiveTouch 属性。这样他们就不能同时接收到触摸。
可以在Interface Builder中设置,也可以在代码中设置
【讨论】:
【参考方案2】:如果在点击按钮时滑块的值对您很重要,那么您应该在点击按钮时获取并存储该值。同样,您应该在再次显示之前设置滑块值。
【讨论】:
以上是关于隐藏视图时如何禁用 UISlider 交互?的主要内容,如果未能解决你的问题,请参考以下文章
创建 UITextView 时,如何在实时视图中显示的 Swift Playgrounds(在 Xcode 上)的 UI 中隐藏键盘?
带有视觉跟踪弹出视图的 UISlider。隐藏在其他视图元素后面的弹出窗口