草庐IT

addtarget

全部标签

iphone - 添加目标 :self versus addTarget:nil

我是iOS开发新手。当我以编程方式添加按钮时,我有点困惑。当我们将目标分配给按钮时,如下所示:[buttonaddTarget:selfaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];和[buttonaddTarget:nilaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];这两种情况都是调用CallMe方法。谁能给我解释一下这两行代码之间的实际区别是什么。如果有人能专门解释一下addTarget的工作原理

Swift Enum to Cocoa Touch UIButton 选择器字符串

我正在为我的letterTapped()函数向UIButton添加一个目标,如下所示:button.addTarget(self,action:"letterTapped:",forControlEvents:.TouchUpInside)我喜欢.TouchUpInside如何与自动完成一起工作,它看起来比我应该用于action:参数的字符串更整洁、更安全。所以我搜索并找到了thistutorial它使用枚举来替换“魔术字符串”。我创建了一个这样的枚举:enumfunctionForAction:Selector{caseclearTapped="clearTapped:"casesu

swift - 如何在 button.addTarget Action 中发送多个按钮? swift 3

如何将按钮和按钮2发送到我的pressButton2函数中?当用户触摸button2时,我需要更改button和button2的颜色...当我的button2.addTarget看起来像这样时,我得到了一个错误:“表达式列表中的预期表达式”。importUIKitclassViewController:UIViewController{overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.letbutton=UIButton(fra

ios - 传递给 UIButton#addTarget 的方法未被调用

我正在浏览Apple'siOSdevelopmentwithSwifttutorial并让自己陷入了第5个阶段:importUIKitclassRatingControl:UIStackView{//MARK:Initialisationoverrideinit(frame:CGRect){super.init(frame:frame)setupButtons()}requiredinit(coder:NSCoder){super.init(coder:coder)setupButtons()}//MARK:Buttonaction@objcfuncratingButtonTapped

ios - 如何在#selector 中添加默认参数值

这个问题在这里已经有了答案:Addstaticparameterto#selectorinSwift(3个答案)关闭5年前。我有一个函数:funchandleChange(isShown:Bool){ifisShown{//dosomethingA}else{//dosomethingB}}如果我想要一个UISlider添加上面的操作,isShown默认为false,我将调用方法handleChange(isShown:Bool)与另一个函数中的true。错误代码如下:slider.addTarget(self,action:#selector(handleValue(isShown:

ios - addTarget 不适用于在 Swift 中创建的 UIButton

因此,我使用Swift创建了一个UIButton,并使用以下代码对其进行动画处理并使其成为superView:overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.//createaUIViewtocontainbuttons.Setbackgroundcolortonil,soit'stransparent.varcontrolsView=UIView(frame:CGRect(x:0,y:0,width:400,height:4

ios - 在哪里初始化 UIButton 中的目标?特别关心 IBDesignable

我有一个@IBDesignableclassFancy:UIButton我要addTarget(self,action:#selector(blah),forControlEvents:UIControlEvents.TouchUpInside)那么应该在UIButton的什么地方完成呢?addTarget的最佳位置在哪里?1-我看到了建议的layoutSubviews-是这样吗?注意-实验表明layoutSubviews的一个问题是,当然,只要事情四处移动,它就可以经常调用。多次“addTarget”不是一个好主意。2-didMoveToSuperview是另一个建议。3-Inits

ios - UIButton addTarget 是如何工作的?

我尝试找出为什么self指向GameViewController而不是AnswerGameViewController.swiftclassGameViewController:UIViewController{vargameplay=QuestionsController(colors:colors)overridefuncviewDidLoad(){super.viewDidLoad()self.view.addSubview(gameplay.answersController.answers[0].button)}funcdidPressAnswerButton(sender:

ios - UIButton AddTarget 在同一目标操作上多次只调用一次?

这只是一个简单的问题,主要是我注意到但很困惑的问题。我过去玩过addTarget,并注意到如果您动态调用addTarget,并在按钮上设置相同的目标/操作两次-使用addTarget方法。即使我们多次“添加”目标和操作,无论它们是相同的目标和操作,操作本身只被调用一次。那么,我的问题-如果另一个目标已经存在于它的目标/操作堆栈中,addTarget是否会忽略向自身添加另一个目标? 最佳答案 UIButton是一个UIControl对象,它遵循事件监听器模式,通常使用目标(也称为监听器)的HashMap(Objective-C中的NS

ios - UIButton AddTarget 在同一目标操作上多次只调用一次?

这只是一个简单的问题,主要是我注意到但很困惑的问题。我过去玩过addTarget,并注意到如果您动态调用addTarget,并在按钮上设置相同的目标/操作两次-使用addTarget方法。即使我们多次“添加”目标和操作,无论它们是相同的目标和操作,操作本身只被调用一次。那么,我的问题-如果另一个目标已经存在于它的目标/操作堆栈中,addTarget是否会忽略向自身添加另一个目标? 最佳答案 UIButton是一个UIControl对象,它遵循事件监听器模式,通常使用目标(也称为监听器)的HashMap(Objective-C中的NS