隐藏视图时如何禁用 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 交互?的主要内容,如果未能解决你的问题,请参考以下文章

iOS10 UI教程禁用视图与用户的交互

创建 UITextView 时,如何在实时视图中显示的 Swift Playgrounds(在 Xcode 上)的 UI 中隐藏键盘?

带有视觉跟踪弹出视图的 UISlider。隐藏在其他视图元素后面的弹出窗口

如何在使用 UISlider 更改音量时隐藏 Iphone 音量框?

点击按钮后立即禁用与不同 ui 元素的用户交互

UISlider 详细信息 iOS 5.1 中 Splitviewcontroller 的视图损坏