草庐IT

ibaction

全部标签

ios - 如何为基于用户输入以编程方式创建的按钮创建 IBAction

我正在创建一个涉及创建基于UIButton的用户输入的小项目。我知道如何以编程方式添加按钮,但我不确定如何让按钮执行我希望它执行的操作。我知道对于直接在Storyboard上创建的UIButton,可以将IBAction链接到文件中来执行此操作。谁能告诉我如何使用以编程方式创建的按钮来完成此操作?非常感谢! 最佳答案 使用addTarget将Action绑定(bind)到方法funcbuttonClicked(sender:UIButton){print("buttonClicked")}然后将目标添加到按钮varbutton=UI

xcode - 为什么 IB 不提供在自定义 Swift 文件中插入 @IBOutlet 或 @IBAction 的选项?

我创建了一个新的cocoa文件,它是NSObject的子类并且符合NSTableView协议(protocol)。当我尝试从IB中的NSButton连接IBOutlet或IBAction时,没有弹出任何选项。我尝试双向连接importCocoaclassTestTableController:NSObject,NSTableViewDataSource,NSTableViewDelegate{@IBOutletweakvarbutton:NSButton!}然后连接它但结果相同。我能够从AppDelegate文件成功连接。她是一些截图: 最佳答案

swift - 在 IBAction 中调用其他函数之前如何完成一个函数?

我无法理解完成处理程序。我有一个textFieldEditingDidChangeIBAction,它首先在文本字段输入上调用verify()函数,然后在apply返回的bool值上调用if语句。问题是if语句在verify()完成之前开始。代码如下:@IBOutletweakvarmyTextField:UITextField!@IBActionfuncmyTextFieldEditingDidChange(sender:AnyObject){letyo=verify(myTextField.text!)print("\(yo)")//italwaysprints"true"beca

ios - 奇怪的@IBAction 冲突或错误? ( swift )

所以我为我的简单iOS应用程序获得了这段代码。当我按下touchPressed按钮时,该按钮应该在屏幕上获得一个新的随机位置,并且labelScore应该根据按钮触摸的次数自行更新。我的一个friend在Objective-C中尝试过这个并且它有效。问题是:我在touchedPressed中有newScore(),但按钮没有找到新位置。如果我评论newScore(),随机位置操作会起作用。提前致谢。//ViewController.swiftimportUIKitimportSpriteKitclassViewController:UIViewController{@IBOutletv

swift - UIBarButtonItem 不触发 IBAction

我正在尝试创建一个UIBarButtonItem,它会在点击按钮后打开相机。出于某种原因,我的takePicture(_sender:)函数似乎没有被调用。我最初尝试使用InterfaceBuilder创建我的UIBarButtonItem。这是连接到UIBarButtonItem的界面和操作的屏幕截图:这里是我的takePicture(_sender:)函数的代码:@IBActionfunctakePicture(_sender:UIBarButtonItem){print("Takingpicture...")letimagePicker=UIImagePickerControll

ios - 如何在 Swift 4 中以编程方式将 IBAction 添加到按钮?

如何以编程方式将IBAction添加到按钮?button.addTarget(self,action:Selector(("buttonAction:")),for:.touchUpInside)funcbuttonAction(sender:Any){print("test")}这给了我一个“Thread1:signalSIGABRT”错误。 最佳答案 swift4版本:button.addTarget(self,action:#selector(action(sender:)),for:.touchUpInside)@objcp

ios - IBAction 函数已正确连接但未执行

我目前正在快速制作一个演示iOS应用程序进行练习,但我遇到了一个问题。我刚刚创建了一个新页面,这个页面上只有一个按钮。我已将按钮链接到IBAction函数,它显示了正确的连接。我会给你看一个屏幕截图,但我没有足够的声誉(我遇到过的所有其他问题我都可以找到其他人的帖子)。它甚至会显示带有实心圆点的圆圈,单击时会显示正确的按钮。在连接检查器中,它在发送的事件下显示了“TouchUpInside”和“UserPagebtnProgressClick”之间的连接(Userpage是我的类,它扩展了UIViewController并被这个微粒ViewController引用,而btnProgre

xcode - didSelectRowAtIndexPath 和 IBAction 的 performSegueWithIdentifier

代码将打开第一个ViewController并且它工作正常:functableView(tableView:UITableView,didSelectRowAtIndexPathindexPath:NSIndexPath){self.performSegueWithIdentifier("openDates",sender:self.dates[indexPath.row])}overridefuncprepareForSegue(segue:UIStoryboardSegue,sender:AnyObject?){lettasksViewController=segue.destin

ios - bool 值、常量和@IBAction 选择器的 Swift 命名约定?

我一直在阅读APIDesignGuidelines对于Swift和一些关于命名我在问题标题中提到的那些实体的帖子,但我仍然不清楚。我正在使用Swift3进行开发。bool变量应该以is-、has-为前缀,还是两种前缀都合适?返回Bool选择器的方法也应该加上前缀is/has?例如,您为避免魔数(MagicNumber)而定义的常量变量应该以k开头?(例如,kMaxLength)。我认为这是Objective-C的约定,Swift也是这样吗?@IBAction选择器的名称,应该是指触发Action的控件,或者它执行的任务?(例如:doneButtonTapped与validateInpu

ios - Xcode 不显示 UIButton 的 @IBAction

当我从Storyboard中的UIButton按住Ctrl键并拖动到viewcontroller类时,Xcode没有显示创建IBAction的选项。我认为这与项目设置有关,因为我尝试在另一台电脑上打开它,但它有同样的问题。解决方案显然我创建了导致此问题的UIButton扩展。 最佳答案 尝试另一种方式(我常用的方式),从代码创建您的@IBAction:@IBActionfuncmyAction(){//hereyourcode}然后CTRL-拖动到这个@IBActionmyAction