草庐IT

uicontrol

全部标签

Swift 以编程方式为带有闭包的按钮创建函数

在Swift中,您可以像这样为按钮创建一个函数:button.addTarget(self,action:#selector(buttonAction),forControlEvents:.TouchUpInside)但是有没有办法我可以做这样的事情:button.whenButtonIsClicked({Insertcodehere})这样我什至不必为按钮声明一个显式函数。我知道我可以使用按钮标签,但我更愿意这样做。 最佳答案 创建您自己的UIButton子类来执行此操作:classMyButton:UIButton{varact

ios - UITextFieldDelegate 与 UITextField 控件事件

如果我想处理对UITextField的更改,例如用户在其中输入;这似乎可以通过为该文本字段分配一个委托(delegate),然后让委托(delegate)实现shouldChangeCharactersInRange,或者通过向文本字段添加一个目标,并处理UIControlEventEditingChanged事件来完成。除了使用委托(delegate)方法可以返回NO并因此阻止用户进行编辑之外,这两者之间有什么区别吗?处理编辑开始或编辑结束的相同问题。它可以通过适当的委托(delegate)方法或适当的事件来完成。如果控件事件可以完成必要的工作,那么textField委托(deleg

ios - UITextFieldDelegate 与 UITextField 控件事件

如果我想处理对UITextField的更改,例如用户在其中输入;这似乎可以通过为该文本字段分配一个委托(delegate),然后让委托(delegate)实现shouldChangeCharactersInRange,或者通过向文本字段添加一个目标,并处理UIControlEventEditingChanged事件来完成。除了使用委托(delegate)方法可以返回NO并因此阻止用户进行编辑之外,这两者之间有什么区别吗?处理编辑开始或编辑结束的相同问题。它可以通过适当的委托(delegate)方法或适当的事件来完成。如果控件事件可以完成必要的工作,那么textField委托(deleg

ios - setEnabled 或 setUserInteractionEnabled 哪个更好?

我想使UIButton禁用用户触摸。setEnabled和setUserInteractionEnabled都可以做到这一点。哪个更好?它们有何不同? 最佳答案 enabled是UIControl的一个属性,它是UIButton的父类(superclass)。userInteractionEnabled是UIView(UIControl的父类(superclass))的一个属性。enabled对对象的视觉状态有影响(默认情况下呈灰色),通常是禁用控件的首选方法-指示行为的视觉反馈是一件好事。除此之外没有太多实际结果。与控件交互的代码

ios - setEnabled 或 setUserInteractionEnabled 哪个更好?

我想使UIButton禁用用户触摸。setEnabled和setUserInteractionEnabled都可以做到这一点。哪个更好?它们有何不同? 最佳答案 enabled是UIControl的一个属性,它是UIButton的父类(superclass)。userInteractionEnabled是UIView(UIControl的父类(superclass))的一个属性。enabled对对象的视觉状态有影响(默认情况下呈灰色),通常是禁用控件的首选方法-指示行为的视觉反馈是一件好事。除此之外没有太多实际结果。与控件交互的代码

iphone - UIControl 未接收到触摸

我有一个UIControl,它实现了touchesbegind方法,如下所示:-(void)touchesBegan:(NSSet*)toucheswithEvent:(UIEvent*)event{[supertouchesBegan:toucheswithEvent:event];//MorecodegoeshereUIControl的这个子类在ViewController中实例化,然后作为subview添加到该ViewController。我在UIControl的touches开始方法处有一个断点,并且该方法永远不会被调用。我一直在做一些阅读,似乎ViewController有一

iphone - UIControl 未接收到触摸

我有一个UIControl,它实现了touchesbegind方法,如下所示:-(void)touchesBegan:(NSSet*)toucheswithEvent:(UIEvent*)event{[supertouchesBegan:toucheswithEvent:event];//MorecodegoeshereUIControl的这个子类在ViewController中实例化,然后作为subview添加到该ViewController。我在UIControl的touches开始方法处有一个断点,并且该方法永远不会被调用。我一直在做一些阅读,似乎ViewController有一

ios - UIButton 在 iOS 5 中不调用操作但在 iOS 6 中工作

我有一个UIButton,它作为ViewController的IBOutlet属性从xib文件加载。我将选择器附加到ViewController的viewDidLoad中的按钮:[_myButtonaddTarget:selfaction:@selector(mySelector)forControlEvents:UIControlEventTouchUpInside];在iOS6中一切正常,但是当我在iOS5.0中的模拟器上运行时,选择器不会被调用。该按钮在被触摸时会突出显示。另一件需要注意的事情是,该按钮位于添加了UITapGestureRecognizer的UIView中。当点击

ios - UIButton 在 iOS 5 中不调用操作但在 iOS 6 中工作

我有一个UIButton,它作为ViewController的IBOutlet属性从xib文件加载。我将选择器附加到ViewController的viewDidLoad中的按钮:[_myButtonaddTarget:selfaction:@selector(mySelector)forControlEvents:UIControlEventTouchUpInside];在iOS6中一切正常,但是当我在iOS5.0中的模拟器上运行时,选择器不会被调用。该按钮在被触摸时会突出显示。另一件需要注意的事情是,该按钮位于添加了UITapGestureRecognizer的UIView中。当点击

ios - UIGestureRecognizer 接收触摸但也将其转发给 UIControl

如何让UIView的UIGestureRecognizer接收触摸事件,同时确保另一个底层/覆盖UIView也接收触摸事件收到完全相同的触摸事件?假设我有以下View层次结构:ViewA(蓝色)和B(红色)都是同一个父View(灰色)的subview。换句话说,他们都是sibling,顺序决定了他们中的谁覆盖了另一个。选项1:ViewB(红色)有一个常规的UIButton作为其subview。选项2:ViewA(蓝色)有一个常规的UIButton作为其subview。为了便于解释,给出了选项1:ViewA(蓝色)附有UITapGestureRecognizer(或者甚至更多,其他UIG