- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 NSRadioModeMatrix
有 3 个单元。 - (IBAction) EnableProxy:(id)inSender
连接到 NSRadioModeMatrix
- (IBAction) EnableProxy:(id)sender
{
if ([[sender selectedCell] tag]==2)
{
/*(gdb) p (int)[[inSender selectedCell] tag]
$1 = 2*/
if (condition) {
// select cell with tag 0
[sender selectCellAtRow:0 column:0]; // This is not working
}
/*(gdb) p (int)[[inSender selectedCell] tag]
$2 = 1*/
}
}// selection is not visible
当条件为真时。选择将返回到标签 2(旧选定的单元格)。 Sample project .
最佳答案
说实话,这是预期的行为,并且有充分的理由。
鉴于上述 UI,如果用户单击 C
,他们期望 C
被选中。相反,如果用户单击 C
并且选择了 A
,则您的用户会感到困惑(并且可能会感到沮丧)。事实上,实现此类行为违反了 OS X Human Interface Guidelines for Radio Buttons .
也就是说,我将继续讨论如何实现您想要的行为。基本上,当您选择 C
时,立即调用 select A
似乎没有成功的原因是,从技术上讲,C
目前仍在选拔过程中。换句话说,事件的简化时间表如下所示:
EnableProxy:
调用方法A
C
终于被完全选中为了获得您想要的结果,您需要像以下代码一样将请求“排队”,而不是立即告诉矩阵选择A
:
- (IBAction) EnableProxy:(id)inSender {
if ([[inSender selectedCell] tag] == 2) {
// [mProxyEnable selectCellAtRow:0 column:0];
[self performSelector:@selector(selectFirstMatrixRow) withObject:nil
afterDelay:0.0];
}
}
- (void)selectFirstMatrixRow {
NSLog(@"[%@ %@]", NSStringFromClass([self class]), NSStringFromSelector(_cmd));
[mProxyEnable selectCellAtRow:0 column:0];
}
通过使用[self PerformSelector:withObject:afterDelay:]
,您基本上是在说“尽快调用此方法”。这样做可以在调用该方法之前完全选择 C
,从而获得您想要的结果。换句话说,事件的时间线将如下所示:
EnableProxy:
调用方法C
终于被完全选中selectFirstMatrixRow
方法A
关于objective-c - 如何更改 IBAction 中 NSMatrix 的选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14563679/
代码应按如下方式工作:在一个 View 上,我单击标签按钮,并且 tagButtonPressed IBAction 应将 tag 变量设置为 sender.tag 的标签按钮。效果很好。然后用户应该
我有一个暂停 IBAction 和一个恢复 IBAction,两者都用于按钮,但我有在游戏过程中收集的游戏点数。我如何在暂停 IBAction 中存储不同的游戏点整数值并将它们传递给恢复 IBActi
我想知道如何从另一个 IBAction 调用 IBAction。我想要做的是,当我触摸 previousPage 上的按钮时,nextPage 按钮的标题会发生变化。换句话说,我有这些IBAction
我得到了这个随机洗牌的 IBAction @IBAction func playRoundTapped(sender: UIButton) { cardNamesArray = GKRando
根据我的标题,我正在构建一个包含一些 UIButtons 的 View 。 我正在考虑将 2 个 Action 连接到一个 UIButton 事件,因为该按钮需要做两件事,但我需要按特定顺序执行它们。
我刚刚注意到在其 IBAction 中设置 UISwitch 的 isOn 会导致再次调用 IBAction。所以下面的代码: class ViewController: UIViewControll
我在一个应用程序上工作,我想使用另一个 UIControllerView 调用一个 UIControllerView 的 IBAction,请帮助我如何实现它。 假设,我有两个名为 FirstView
当我将按钮链接到源代码(在本例中为 .h 文件)并选择 NSButton 作为类型时,Xcode 将写入: - (IBAction)pushClear:(id)sender; 据我了解应该是 - (I
我如何能够根据另一个事件运行 IBAction?例如,我可以使用一段代码来运行 IBAction。 我想做的是让两个不同的按钮运行一个或多个 IBActions。 最佳答案 您可以将多个按钮连接到同一
好吧,我正在 Xcode(版本 3)中为 Mac OS X 编写一个应用程序,但我的 IBactions 遇到了问题。我编写它们,并将它们连接到我的按钮,但由于某种原因,当我单击按钮时它们永远不会被调
+(UIBarButtonItem*) settingsButtonForController:(UIViewController*) viewController{ UIBarButtonI
我对 Xcode 和编码都很陌生,所以请耐心等待,哈哈。我正在为一个科学博览会项目开发我的第一个应用程序,该应用程序基于选项卡,有两个主页。一页包含多个开关;无论哪个开关打开,都决定其他页面上的大按钮
我正在尝试将多个按钮链接到相同的IBAction,以运行类似但不同的代码。代码是将在另一个 View Controller 上单击的图像设置到按钮下的 UIImageView 中。所有按钮都链接到相同
我需要控制用户何时在搜索栏中键入内容。使用文本字段很容易,但我找不到使用搜索栏执行此操作的方法,因为我无法使用 IBActions。 最佳答案 UISearchBar 有属性 id delegate
我正在尝试为 iPhone 创建一个应用程序,我有一个主视图 Controller 和许多其他 View Controller 。这是因为它是一个多 View 应用程序。 在 ViewControll
我有一个 IBAction: - (IBAction)stop:(id)sender { NSLog(@"Called"); if (timer) { [timer i
嗨,我正在尝试通过单击按钮打开图像,在我的 .h 我有 @interface FirstDetailViewController : UIViewController { IBOutlet U
我正在创建一个新类 - 继承自 UITextView 的 UIMyTextView。 我希望此类发送新类型的事件,然后我将使用 IBuilder 将其连接到适当的 IBAction。 怎么做? 最佳答
我正在学习 CS193p Stanford iOS 类(class),并且即将完成作业 3 - 在该作业中,我还将图形计算器转换为适用于 iPad 的通用应用程序。当在计算器中输入程序(例如“x +
我有一个 IBAction,由 UIButton 触发。 在此 IBAction 中,我将应用程序连接到服务器,返回一个 Plist。 在此期间(在我的应用程序连接到服务器和服务器返回该 Plist
我是一名优秀的程序员,十分优秀!