- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有几个弹出按钮,其选定的标签保存在用户默认值中(通过在绑定(bind)检查器中绑定(bind)选定的标签)。现在,我不想保存一个整数,而是想保存一个字符串值(原因很简单,它使用户默认值更“可读”并且更安全),但遗憾的是没有找到绑定(bind)弹出按钮的选定标识符的方法。这个问题有解决办法吗?
最佳答案
NSPopupButton
的绑定(bind)可能有点令人困惑。各种 Content* 绑定(bind)用于为按钮提供可能的选择列表。 Content
本身用于提供由弹出按钮中的项目表示的对象列表。 内容值
用于提供弹出按钮中显示的实际值。例如,Content
可能绑定(bind)到模型对象数组,而 Content Values
绑定(bind)到这些对象上的特定键路径,例如 name
,因为您想在弹出按钮本身中显示每个项目的 name 属性的值。
同样,选择的绑定(bind)也对应于这个系统。 选定对象
意味着当选择给定项目时,将在绑定(bind)属性上选择/设置Content
数组中的底层完整对象,而不仅仅是简单显示的字符串(或数字等)值。另一方面,Selected Value
确实只会绑定(bind)显示的值。
总的来说,在您没有使用内容绑定(bind)的情况下,这意味着您有两个选择:
选定值
绑定(bind)到用户默认值。identifier
属性和 name
(或任何您想要的名称)属性的基础模型类。将 Content
绑定(bind)绑定(bind)到这些对象的数组,并将 Content Values
绑定(bind)绑定(bind)到 thatArray.name
。这个选项要简单得多。只需设置所选值绑定(bind)即可完成。它的主要缺点是实际显示的字符串是存储在用户默认值中的内容。这意味着,如果您更改某个项目的措辞,则之前存储的选择将不会恢复,即使它直接对应于新措辞的项目。更重要的是,让本地化(或潜在本地化)字符串在语义上变得重要并不是一个好主意。
这需要更多的工作(和代码),但它会以稳健的“正确”方式解决您的问题。例如:
@objcMembers class Option: NSObject {
dynamic var name: String
dynamic var identifier: String
init(name: String, identifier: String) {
self.name = name
self.identifier = identifier
}
}
class ViewController: UIViewController {
@objc dynamic var optionsForPopup = [Option(name: "Item A", identifier: "id 1"),
Option(name: "Item B", identifier: "id 2"),
Option(name: "Item C", identifier: "id 3")]
}
绑定(bind):
Content
到 ViewController - optionsForPopup
。 内容值
到ViewController - optionsForPopup.name
。 选定值
到共享用户默认 Controller - Controller 键:值
,模型键路径:WhateverUserDefaultsKeyYouWant
。我在这里创建了一个实现选项 2 的示例项目:https://github.com/armadsen/PopupDemo
关于cocoa - 绑定(bind) NSPopupButton 的选定标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58815717/
我有十二个指向不同类别的链接。作为用户定位的一种方式,我想强调用户现在所在的类别( - 按钮)。 如何在 CSS 中实现这一点?我读到了 selected和 active ,但我还没能让它发挥作用。
我想通过单击按钮来获取选择框中的所有选项值(选定/未选定)。我怎样才能做到这一点? 最佳答案 我认为这是使用 Traversing/map 的好机会方法: var valuesArray = $("#
我正在尝试构建一个计算器,其中包含两个数字的两个 TextView 字段。我弄清楚了如何使用“应用程序内”数字键盘输入顶部数字 Operand 1 [textView] 的数字(我知道使用 EditT
我有一个简单的 jQuery $("span.value"),它选择包含文本的节点。此文本保证为整数。如何计算所有选定节点文本的总和,并将总和放入另一个节点? 3 4 5 ? 最佳答案 你可以这样做:
我从同一台服务器上托管的一堆数据库中备份了 mysql 数据库 db1。现在只需要备份具有访问 db1 权限的选定用户,以便我可以在 db1 还原之前将这些特权用户还原到我的新服务器。 最佳答案 St
我有一个 ListView 。我想添加一个动画,如果我选择一个列表项,它将被删除,并且该项目下方的其余项目将通过向上滑动动画向上移动。我已经通过获取其子位置使用线性布局完成了此操作,但我无法理解如何向
我不明白如何使用 Python 解析来自 Outlook 的突出显示(选定)邮件? 我有这个代码,但它适用于上一封邮件。 import win32com.client outlook = win32c
在 Xcode 6 中,您现在可以为选项卡项目的选中和未选中状态设置图标。请参阅下图中的说明: 和 唯一的问题是 SELECTED 状态的图像不显示。它只是显示空白。还有其他人有这个问题吗?请看下面的
在我的数据模型中,我有一个实体组和另一个GroupMember实体。一个Group包含一个或多个GroupMembers,但一个GroupMember只能同时位于一个Group中。到目前为止没有问题,
Android Button 在不同状态(正常、按下、选中、禁用)之间移动时会更改其可绘制背景。背景切换是即时的。是否可以使其平滑(动画)? 最佳答案 是的,这是可能的。您只需为按钮添加 addAni
我使用 emacs 来查看和编辑代码和其他文本文件。我想知道是否有一种方法可以向前或向后搜索当前缓冲区中标记的文本。类似于我在记事本或写字板中可以执行的操作。就像我可以在缓冲区中标记一些文本并执行 C
如何根据状态(选定、禁用)设置自定义选择类?如何根据状态选择(选定、禁用)在自定义下拉列表中设置类?照做了,但什么也没发生。请看我的例子................................
我正在尝试检查下拉菜单中是否存在特定文本值,如果存在,我想将其属性设置为selected。 我成功编写了一个 if 语句来检查文本是否存在: var country = usr.location; i
对于我的应用程序,我想让用户能够在回收器 View 中调整 TextView 项目的文本大小(通过捏缩放或 SeekBar)。默认值应为系统设置中选择的文本大小。最小值应为系统设置中的“非常小”,最大
我正在尝试创建一个 ListBoxItem 模板,该模板在选择时将带有圆角边框。我得到了这个 xaml,它在选择时不起作用:
我正在寻找检索焦点元素的 HTML。查看 webdriver.io 文档,方法 .getActiveElement() 应该可以解决这个问题。但是,我的 IDE (WebStorm) 显示错误,指出它
我创建了一个圆,在我的 onDraw() 方法中围绕圆绘制了一条字符串和一条线(箭头)。 public class Circle extends Activity { public class
对于生产应用程序,我们希望在 Windows 窗体应用程序的 ElementHost 内显示 DatePicker,但我们遇到了 SelectedDate 和 CurrentDate 不可读的问题,因
好的,我在此处和 Google 上的许多网站上搜索了此问题的结果,但找不到针对我的问题的确切解决方案。 我有一个 sql 提取姓名和办公室。所以事情是这样的: $sql = "SELECT m
选中单元格时如何改变灰色? 最佳答案 当用户点击选中的行 (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSInd
我是一名优秀的程序员,十分优秀!