问题标签 [setuserinteractionenabled]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 哪个更好,setEnabled 或 setUserInteractionEnabled?
我想UIButton
禁用用户触摸。两者都setEnabled
可以setUserInteractionEnabled
做到这一点。哪个更好?它们有何不同?
ios - 关于 iOS 中的 setUserInteractionEnabled UIImageView
我是 iOS 的新手,我有一个问题:我有一个从UIImageViewsetUserInteractionEnabled
扩展的对象,例如:
然后当我将它添加到UIView时:
然后在touchesBegan
,我仍然在触摸它时捕获事件(触摸它时我仍然收到日志):|
然后源码 touchBegan 方法:
我不认为这有问题,因为我尝试添加相同的 UIImageView,如下所示:
它运行正常:| 当点击 image1 和 image2 时我无法捕捉事件。
所以我有错误?请给我解释一下!感谢大家的支持!
ios - 我可以让 UIPresentationController 在 PresentingViewController 上有 userInteractionEnabled 吗?
我正在为 iPhone 和 iPad 的通用应用程序构建自定义 GUI。在 iPad 上,它严重依赖“sideViews”来实现内容操作、detailInformation 等实用程序(想想高级的 SplitView)。从视觉的角度来看,新的 UIPresentationController 可以让我展示这些“sideViews”(而不是使用 dimmedView),并且实现很容易构建和维护,同时仍然很好地与故事板集成。但是我需要能够在presentingViewController 可见时操作presentingViewController 的内容。所以我的问题是,我可以在呈现侧视图时在presentingViewController 上设置userInteractionEnabled(或类似的)吗?
objective-c - WatchKit 用户与标签的交互
在为演讲计时的应用程序编程时,我意识到我希望能够让人们通过简单地点击计时器(一个简单WKInterfaceLabel
的更新)来随时暂停计时器。我已经知道如何创建一个计时器以及如何在一个方法中暂停它,但我似乎无法弄清楚如何点击它WKInterfaceLabel
并为其创建一个动作。
在 iOS 上,我可以简单地将userInteractionEnabled
属性设置为YES
for a UILabel
,但似乎该属性在 上不存在WKInterfaceLabel
,这引发了一个问题,即如何让用户简单地点击标签来执行一些代码。
我只是想知道是否有人对此有解决方法,因为在 Apple 的开发人员文档中我找不到类似的属性。
ios - 禁用特定视图组件(当显示 SWREvealViewController 时)
我在我的应用程序中使用了 John Lluch 的 SWRevealViewController,当侧边栏出现并且用户想要关闭它时,会不断单击前视图。
我想要做的是在显示侧边栏(后视图)时禁用前视图,但这并不像我想象的那么容易。禁用前视图 ( self.revealViewController.frontViewController.view.userInteractionEnabled = NO;
) 时,手势监听器和显示按钮监听器也被禁用,因此用户无法再次关闭侧边栏。
那么有没有人解决过类似的问题?如何禁用视图控制器的特定组件?我尝试查看对象并找到正确的子视图,但它太复杂而且很难看。
感谢您对此的任何意见!
ios - iOS UIButton - UIButton setUserInteractionEnabled 和 setEnabled 之间的区别
等等!!!:
我知道你可能认为这个问题已经被问过好几次了。但我可以向你保证,这个问题是独一无二的。
问题:
在 iOS 应用程序中,想象一下有两个按钮,如下图所示,它们有两个动作,其行为类似于切换逻辑。
其逻辑可能如下:
所以我看不出setEnabled
方法和setUserInteractionEnabled
方法之间有很大的区别。它们的行为就像一个阻止用户不让使用它的单一方法。但是,如果它是相同的,我们如何能够检测到isEnabled
true
甚至false
何时setUserInteractionEnabled
设置为False
?
以下是使这个问题不可能与 SO 中的另一个问答线程重复的原因:
- 尽管一些排名靠前的代码可能已将我的问题标记为可能重复,但 Q&A 并没有给我正确的理解。
- 正如@danh 所说,
至少一个原因是在动画期间,UIViews 上禁用了用户交互。控件在动画时将自己绘制为灰色是错误的。所以至少在动画期间,这两个属性有不同的含义。
给我真正的答案或理由,看看这两种方法有两个原因。因为任何人都可以说这setUserInteractionEnabled
不会对 UI 状态进行更改,但至少只有在 @danh 的回答首先表明它可能会在 UI 动画期间隐式使用。
overlay - 在 overlaySKScene 上设置 userInteractionEnabled=true/false 无效
我有一个像这样的 SceneKit 视图:
现在,如果我在userInteractionEnabled
上设置属性overlaySKScene
,它没有效果,即它始终处于启用状态,所以我不能禁用用户交互overlaySKScene
!?所有添加到的子 SKNodeoverlaySKScene
仍将接收用户交互...</p>
即这没有效果,它总是启用
不知道是不是应该这样?但似乎这就是应该如何禁用用户交互overlaySKScene
......?
ios - 为什么 userInteractionEnabled 属性不适用于特定的 UIButton?
这可能是我处理过的最令人沮丧的情况,它可能有最简单的解决方案。
我有这个UIButton
storeB
在viewDidLoad:
调用我的UIViewController
. 在创建按钮之前,我创建了 5 个其他按钮。
在 期间viewDidLoad:
,我运行了这个方法,该方法setupFBConditions
确定我的forwardB
按钮对象是否应该有一个alpha
0.5 并userInteractionEnabled
设置为 0。在这种情况下,按钮看起来和执行它应该的方式(本质上,就像它不存在一样)。
此外,在对我的一个对象执行此特定动画期间UIView
,我决定将userInteractionEnabled
我的对象的属性设置restartB
为 0(以便在动画期间不发生交互。该性能也很成功。
然而,当我决定写:
在动画开始时(意图保持此状态直到游戏结束或restartB
再次被点击)和NSLog
按钮对象,日志显示userInteractionEnabled
属性为 0.5 NO
,alpha
就像它应该的那样。但是,这些属性在任何时候都不会反映到 UI。
storeB
我什至不是最后一个要添加到层次结构的视图(尽管它是最后一个UIButton
)。我不知道为什么这些更改没有生效。
我不会再发布任何代码了,因为除了上面的两行之外没有什么可发布的了。问题+解决方案显然很简单。
************ 更新 **************
这是我的一个滑动手势操作(之后storeB.userInteractionEnabled = NO;
)结束时的日志报告:
框架是正确的,alpha 和交互设置是正确的,superview 框架(0,0,320,568)正是它应该是的。
*********** 第二次更新 **************
万一有人发现这很有用...检查您的/的_retainCount
属性,并在考虑对对象执行的所有操作时查看它是否看起来异常高。我的保留计数应该是 2,所以每次我更改属性(我认为是我的第一个实例)时,它实际上只影响第二个实例(我什至不知道存在)。UIView
UIButton
storeB
ios - 如何禁用 UIView 掩码的用户交互
TL;博士
我只想知道是否有任何方法可以仅对视图的屏蔽部分禁用用户交互。
这是场景:
我有两个视图View A,View B,它们都是Equal Width和Equal Height。
视图 B 位于视图 A 之上。
我在底部的视图 B上应用了蒙版(CAShapeLayer)以查看视图A的内容(两个按钮)
由于View B有一个面具,我只能看到View A的内容,但我无法与之交互。
任何帮助,将不胜感激。谢谢。
ios - 如何将 AVPlayerViewController 的 userinteractionEnabled: 设置为 NO?
我尝试将 AVPlayerViewController 的 userinteractionEnabled: 设置为 NO
但我有一个错误
没有可见的@interface 这是我的完整代码:
我只是希望人们在视频期间不能点击屏幕。
提前致谢。