问题标签 [ibaction]
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.
iphone - 'NSInvalidArgumentException' UIButton IBAction 错误
我在视图中有一个拒绝工作的按钮。我已经在 X-Code 的一个空白的默认视图应用程序中工作,但是在我的任何应用程序中它都不会工作,而是它给了我以下错误。
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“*** -[UIViewController showVicInfo:]: unrecognized selector sent to instance 0x3c084f0”
调试器也没有任何帮助。我已经确保我也将按钮连接到文件的所有者(而不是相反)。下面是操作的代码。而且我知道这不是警报视图,因为断点甚至没有到达那里。
关于.h
关于.m
更新:仅供参考,如果有帮助,这就是我创建按钮的方式。
- 创建新视图(文件>新文件>UIViewControllerSubclass w/XIB 用于接口)
- 添加 -(IBAction)showInfo:(id)sender; 到大约.h
- 添加
- -(IBAction)showVicInfo:(id)sender { UIAlertView *myAlert = [[UIAlertView alloc] initWithTitle:@"No Internet Connection" message:@"您需要通过 WiFi 或蜂窝网络连接 Internet 才能使 iFirelert 工作。" delegate:self cancelButtonTitle:@"好的,谢谢" otherButtonTitles:nil]; [我的警报节目];[我的警报发布];} 到 about.m
- 在 Interface Builder 中打开 About.xib,将一个矩形按钮拖到视图上
- 通过 ctrl 单击按钮到文件的所有者属性(而不是相反),将按钮连接到 -showVicInfo 操作。
- 检查文件的所有者是否设置为“关于”类。
然后在 X-Code 中构建并运行失败。
更新 2:好的,我已经确定它必须是我现有项目中的设置或其他东西。我复制了两个类文件和 XIB 文件,它们在另一个 X-Code 项目中工作,但按钮也抛出相同的现有应用程序中的错误。
iphone - 有效地使用界面生成器
我是 iPhone 和目标 c 的新手。我花了几个小时和几个小时阅读文档并试图了解事情是如何运作的。我有 RTFM,或者至少正在处理中。
我的主要问题是我想了解如何指定事件传递到的位置,并且我能够做到这一点的唯一方法是指定委托,但我确信在 IB 中有一种更简单/更快的方法。
所以,举个例子。假设我有 20 个不同的视图和视图控制器以及一个 MyAppDelegate。我希望能够在 IB 中构建所有这些不同的 Xib 文件并添加许多按钮和文本字段等等,然后指定它们都在 MyAppDelegate 对象中产生一些事件。为此,我在 IB 列表视图的每个视图控制器中添加了一个 MyAppDelegate 对象。然后我在 XCode 中的 MyAppDelegate 中创建了一个 IBAction 方法并返回到 IB 并将所有事件链接到每个 Xib 文件中的 MyAppDelegate 对象。
但是,当我尝试运行它时,它会因读取异常而崩溃。
我的猜测是,每个 Xib 文件都放置了一个 MyAppDelegate 对象指针,该指针与最终将在运行时实际创建的 MyAppDelegate 地址无关。
所以我的问题是……我该怎么做?!!!
objective-c - 在 Cocoa 中,为什么直到 IBAction 完全执行后才会显示文本字段?
我有一个 IBAction,里面有一些简单的代码:
'textfield' 是 nib 文件中的 NSTextField,而 -'dolengthyaction' 是一个需要大约一分钟才能完成执行的函数。
我的问题是:为什么在执行“dolongyaction”之后才显示文本字段?我希望它在 dolongyaction 开始发生之前被揭露。这是一个固有问题还是我的代码有问题?(或在我的代码的另一部分?)
我仍然不是很擅长编程,所以如果我措辞不好并且格式错误,我深表歉意。
编辑:除了这个 IBAction 和 -dolongyaction 没有什么别的了...
我真正想做的就是在动作运行时显示标签,并在动作完成时隐藏它。
基本上这意味着它现在根本没有显示。
实际上,在 -doLengthyAction 中,它不是 sleep(10),而是一个 NSFileManager 操作,它复制了大约 50 Mb 的材料。代码相当长,但如果你想让我发布它,我可以。我用 sleep() 对其进行了测试,但它也不起作用。
uibutton - IBAction UIButton 和 EXC_BAD_ACCESS
在 .h 文件中我写
和.m
并连接到内部甚至修饰但是当我运行我的程序时它错误显示此消息
-[UITouchData openShuffleForm]:
无法识别的选择器发送到实例 0x391cc20
** 发生了什么我不知道为什么?
iphone-sdk-3.0 - 当我的 UIViewController 从 IBAction 访问我的 AppDelegate 中的 NSArray 时,它会使程序崩溃
我有几个 UIViewControllers 我试图访问我的 AppDelegate 中的一个数组。当我使用 IBAction UIButton 并在该方法中访问我的 AppDelegate 时,我的程序会默默地死掉。输出或调试器中没有任何内容,它只是停止。如果我多次运行它,我可以看到它无法正确访问数组。
为了调查这个问题,我创建了一个非常基本的应用程序。
在我的 AppDelegate.h 中,我声明并设置了数组的属性
在 AppDelegate.m 中,我合成并初始化了 NSArray(同时确保将图像添加到 Resources 文件夹中)。
在我的 UIViewController.h 中,我为我的 AppDelegate 指针添加了类、导入的头文件、声明并设置了属性。
MyAppDelegate *mainDelegate; IBOutlet UIButton mybutton; @property (nonatomic, 保留) MyAppDelegate mainDelegate; @property (nonatomic, 保留) UIButton *mybutton; -(IBAction)做某事;`
在我的 UIViewController.m 中,我合成并分配了我的 AppDelegate。我设置了一个 IBAction,它将记录来自 AppDelegate 的 NSArray 的相同计数。
NSLog(@"ds 图片大小:%i",[mainDelegate.images count]); }
当我创建它时,我在 AppDelegate 中打印 NSArray 的大小,当我第一次分配我的 AppDelegate 指针时在 ViewController 中打印它,然后作为我的 IBAction 的结果。
我发现每次我按下按钮时程序都会死掉。在我第三次按下按钮时,我看到它运行了我的 IBAction,但将我的数组大小打印为 1 而不是 8。我错过了什么吗?另外,为什么我没有得到堆栈跟踪或任何东西,调试器只是默默地死掉了?
提前感谢您的帮助!
3 次运行的调试器控制台输出:
keyboard - 按下 UIButton 后,UITextfield 变得专注
我有一个用于输入文本的 UITextfield。一个按钮触发一个功能。完成 IBAction 后,UITextfield 再次获得焦点。在 IBAction 之后,我想让键盘消失。现在发生的事情是,由于按钮的 IBAction,键盘消失了(我正在显示 UIAlert),并且在 IBAction 之后,键盘与 UITextfield 中的焦点一起再次弹出。是否可以防止在 IBAction 之后聚焦 UITextfield?
cocoa - 绕过 IBActions 有限的范围
我有一个 NSCollectionView,视图是一个带有标签和 NSButton 的 NSBox。我想要双击或单击 NSButton 来告诉控制器使用 NSCollectionViewItem 的表示对象执行操作。Item View 已经被子类化,代码如下:
我遇到的问题是,作为一个 IBAction,-start 范围内的唯一东西是已经在 IB 中绑定的东西,所以委托和 viewItem。这意味着我无法获取表示的对象以将其发送给委托人。
有没有办法绕过这个有限的范围或更好的方法或获取表示的对象?
谢谢。
ios - 从代码中调用 IBAction 的最佳方法是什么?
例如,我有一个IBAction,它连接到界面生成器中的UIButton。
在我的代码中,例如在另一种方法中,调用该IBAction的最佳方法是什么?
如果我尝试这样调用它,我会收到一个错误:
但是,如果我尝试这样称呼它(我认为有点作弊),它可以正常工作:
正确调用它的正确方法是什么?
iphone - iPhone:“无法识别的选择器已发送到实例”错误
我正在尝试使用 ramin.firoozye.com 上的“iPhone 上的半模态(透明)对话框”中的代码在我的应用程序中实现部分覆盖模态。覆盖功能有效,它将模态框滑入视图,但从模态框的控制器调用任何 IBAction 会导致“无法识别的选择器发送到实例”崩溃。
我用隔离的代码重新创建了基本功能,它触发了同样的错误。要了解我在说什么,您可以在此处下载测试项目。
我确定我只是在这里遗漏了一些简单的东西。任何帮助将不胜感激。
iphone - 未从动作调用时使用 IBAction 方法?
如果实际上并未从用户的操作中调用 IBAction,那么在使用 IBAction 时是否存在任何问题?
如果您有类似的操作
您可以在课堂上调用它,例如:
@"x" 不做任何事情,它只是为发送者填写。
您实际上可以在没有 (id)sender 的情况下创建 IBAction 方法
并从用户的操作和代码中调用它,但是您不会从界面中获得任何有用的发件人信息。从代码调用时,为发件人填写的“正确”方式是什么?当从代码中调用它时,您可以创建发送者信息吗?
只是想弄清楚。