0

我有NSPopUp几个值,其中一个是“自定义”。自定义没有索引或标记等于零。假设它是第四个项目,标签也是 4。

如何检查“自定义”的选择?我想隐藏/显示基于此选择的另一个控件。只有当我选择“自定义”时,才会出现这个其他控件。希望我可以使用“隐藏”绑定,但是如何配置呢?

4

2 回答 2

1

我不知道是否有一种简单的方法可以使用绑定来完成此操作,但可以使用弹出窗口的操作方法轻松完成。只需根据 titleOfSelectedItem 的值设置其他控件的隐藏属性:

-(IBAction)selectionChanged:(NSPopUpButton *)sender {
    if ([sender.titleOfSelectedItem isEqualToString:@"Custom"]){
        self.otherControl.hidden = YES;
    }else{
        self.otherControl.hidden = NO;
    }
}
于 2012-12-12T01:12:26.360 回答
1

这是解决方案...

创建一个属性“onOffValue”以跟踪从弹出窗口中选择的“自定义”。

更改 onOffValue 的一项操作。

在.h

@property(assign) BOOL onOffValue;
- (IBAction)popUp:(id)sender;

在.m

- (id)init
{
    self = [super init];
    if (self) {
        self.onOffValue=NO;
    }
    return self;
}

- (IBAction)popUp:(id)sender {
    if ([[sender title]isEqualToString:@"Custom"]) {
        self.onOffValue=NO;
    }
    else{
        self.onOffValue=YES;
    }
}

在 IB 中,选择要隐藏-取消隐藏的控件。

在绑定检查器中,在隐藏选项中绑定到您的类(在我的情况下是 AppDelegate)

将模型密钥路径设置为self.onOffValue

而已!!!

编辑: 在此处输入图像描述

这是您可以下载文件以获取帮助的链接...

于 2012-12-12T08:19:31.230 回答