为Nspopupupton设置默认选择?
-
24-10-2019 - |
题
是否可以在NSPOPUPUPTON上设置默认选择?我有一个允许用户选择要设置的服务器的类型,但是由于Nspopupupbutton总是显示第一个项目,因此如果那是他们想要的类型,他们可能会忽略它。但是,即使显示了该项目,呼叫-SelectedItem返回(null)。如果用户首先从菜单中选择一个项目,一切正常。
该按钮的内容和内容值与同一数组控制器绑定,而该阵列控制器又绑定到Nsdictionary的键属性。我尝试将SelectedIndex绑定到控制器中的变量并在代码中更新该变量,但没有效果。 (我可能只是将其绑定错误...)默认情况下如何选择第一个项目?
提前致谢!
SphereCat1
解决方案
使用绑定时,您不需要并且不应该获得任何模型信息(无论是模型本身或选择状态),直接从视图中。与拥有模型和所选索引的控制器交谈。
请注意,“索引”对nsdictionary没有任何意义,并且 keys
不是nsdictionary的财产。 (的确,如果您有例外,我不会感到惊讶,因为您的字典没有其中的“键”对象。)这是一种方法,而不是访问者,因此,当您的同时 能够 使用键值编码向字典询问该方法的值,您不应该。
你应该做的是 模型对象 表示服务器类型,并保存这些数组,并将数组控制器的内容绑定到该值为该数组的属性。绑定弹出按钮的 contentValues
对于模型对象的名称属性,该属性应保存每个服务器类型的本地名称。
不隶属于 StackOverflow