问题标签 [nsformatter]

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.

0 投票
1 回答
997 浏览

objective-c - 如何将自定义 NSFormatter 设置为 NSTextView?

我有一个NSTextView并且我有一个NSFormatter限制字符串长度的自定义。但是我如何“ [_textView setFormatter:customFormatter]”上一个NSTextView?我找不到如何做到这一点。
示例代码将不胜感激!

0 投票
0 回答
397 浏览

objective-c - NSTextField 的自定义 NSFormatter 实现

我对 Cocoa 开发很陌生,并且在自定义 NSFormatter 实现方面遇到了麻烦。

在我的应用程序中,我需要获取用户的输入并对其进行验证。输入格式应该是这样的:

hh:mm:ss:nn - 其中 hh(小时从 00 到 24),mm 和 ss(从 00 到 60 的分和秒),nn 是从 00 到 50 的某个数字。

如果有人知道任何一种好的来源,我可以在其中找到类似的问题示例,或者可以解释我如何解决这个问题,我将不胜感激!!!

谢谢!

0 投票
1 回答
219 浏览

objective-c - 对可以多次使用的对象(如格式化程序)的并发性存疑

也许要问一个愚蠢的问题,但我需要对此进行一些确认。

通常,当我处理可以在我的应用程序中多次使用的对象时,我使用如下方法。

创建一个扩展,例如NSDecimalNumber+Extension,或一个类实用程序,其中创建了一个数字格式化程序,如下所示。

这种方法非常好,例如,格式化程序的创建成本很高。但它也可以应用于其他情况。

现在,我的问题如下。

这种方法在涉及不同执行路径(不同线程)的情况下是否也有效?

所以,如果我先stringRepresentationOfDecimalNumber在主线程上调用,然后在另一个线程中调用,会发生什么?

我认为stringRepresentationOfDecimalNumber在不同的线程中执行不同的调用是有效的,因为在这种情况下,共享格式化程序是只读的,但我希望得到专家的答复。

提前致谢。

0 投票
2 回答
117 浏览

ios - 在 ios 中格式化货币输出

这是我放在一起的代码,它将文本字段的输出格式化为货币我试图弄清楚如何格式化货币,所以输出是,

如果有人输入 1625,则当前将其格式化为 0.1625,如果有人输入 50,则将其格式化为 0.50,这是正确的,因为它应该是一个计算器,它以美分或便士为单位计算人们的电费。

0 投票
1 回答
333 浏览

objective-c - 为什么继承 NSFormatter 会阻止我编辑 NSTextField 的输入?

我正在尝试为 SMPTE 时间码格式化两个 NSTextField,其格式为: HH:MM:SS:FF. 但是,当用户将 SMPTE 代码切换为丢帧时,SS 和 FF 之间的分隔符需要切换为;( HH:MM:SS;FF)。为此,我对 NSFormatter 进行了子类化,并且除了一个非常顽固的问题外,它大部分时间都在工作。

文本字段可以很好地接受输入,但是如果我突出显示替换、退格、删除或在文本字段中插入任​​何新字符,我会得到一个 NSBeep 并且我无法将焦点从文本字段上移开。如果我先删除整个文本字段,我可以输入新文本,但如果我尝试编辑现有输入,则不能。这是我实现的方法/覆盖:

至少在这一点上,我不需要在编辑过程中验证输入,只有在编辑完成时才需要验证。我尝试实施isPartialStringValid并返回YES,但这似乎也没有帮助。任何帮助将不胜感激!

0 投票
1 回答
591 浏览

objective-c - 如何制作具有焦点重绘本身的 NSTextField?

我已经继承并定义了我自己的自定义 NSFormatter 和 NSTextField 类,以便正确显示 SMPTE 时间码值 ( HH:MM:SS:FF)。当用户选择对 fps 值使用 drop-frame 时,格式将更改为HH:MM:SS;FF(末尾的分号)。除了最后一个障碍外,我让这一切都运作良好。

更改格式时,具有焦点的 NSTextField 不会更新它的显示,直到失去焦点。这是一个截图来说明:

更改为丢帧格式

我尝试setNeedsDisplay在格式更改时向 NSTextField 发送消息,以及向其发送display消息。到目前为止似乎没有任何效果,并且带有焦点的文本字段拒绝更新/重绘自身,直到失去焦点。

关于我需要做些什么来实现这一点的任何建议?

0 投票
1 回答
70 浏览

ios - NSString 到 NSDate

我不知道如何将特殊的日期字符串转换为 NSDate。我有的:

也试过:

没有运气。

我怎么能解决这个问题?

0 投票
1 回答
362 浏览

interface - NSByteCountFormatter 没有可见的@interface

我读过此错误可能与目标操作系统不支持的 NSByteCountFormatter 有关。

从版本 10.8(山狮)开始支持此类。所以我将我的项目“部署目标”从 10.6 更改为 10.8,但我仍然收到此错误。

尝试使用 make clean,重新启动,什么都没有。我错过了什么?

错误: “NSByteCountFormatter”没有@interface 声明选择器“stringFromByteCount:countStyle:”

任何想法?

0 投票
1 回答
308 浏览

iphone - 如何将浮点数转换为日期格式?

我有一个浮点值,我需要将我的浮点数转换为日期。例如,我有浮动 50,55,我想贴上这样的标签值:50 年 6 个月 6 小时 6 分钟 30,04 秒。

我想知道如何让这个标签每 0.01 秒改变一次以改变值。请为我提供将我的浮点值转换为日期格式的解决方案,我们将不胜感激。

这是我用于创建浮动的代码:

0 投票
1 回答
829 浏览

objective-c - NSTextView 设置格式器?

如果我们想说例如创建一个只允许数字的自定义格式化程序(以这个问题为例) ,NSTextField我们可以很容易地调用。setFormatter

但是,如果我们想将格式化程序应用于 aNSTextView怎么办?似乎没有办法设置格式化程序,除非我忽略了某些东西。

关于如何解决这个问题的任何建议?