问题标签 [nib]

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 回答
1784 浏览

cocoa - 使用 NSViewController 加载 nib 后...如何访问 nib 中的 NSButton?

我已经将 NSViewController 子类化,并将 IBOutlets 连接到辅助笔尖中的 NSButton 中。

我可以实例化 NSViewController 并在 NSMenu 中应用视图——效果很好——但是如何访问按钮来更改其标题?

由于 NSViewController 有 IBOutlets,我假设我会通过控制器来执行此操作。

关于从这里去哪里的任何指示?

编辑添加: toDoViewController 类——

0 投票
1 回答
611 浏览

objective-c - 从控制器访问 nib/xib 对象

我在 xcode 中有一个 UI 文件,并且我有一个带有 awakeFromNib 函数的 AppDelegate 类。通过这个函数,有没有办法改变 UI 中对象的属性?例如,更改标签、文本字段等的字符串。

抱歉英语不好,尽我所能解释。

任何帮助将不胜感激!

——阿尔贝

0 投票
3 回答
4474 浏览

cocoa - NSArrayController 初始化

我无法让支持核心数据的 NSArrayController 在我的代码中正常工作。下面是我的代码:

当我尝试调用 setSelectionIndex: 时,它返回 YES,表示选择已成功更改。但是,任何后续对 pageArrayController 对象的 getSelectionIndex 调用都会返回 NSNotFound。

我不明白的是,如果我将 NSArrayController 放入 NIB,并允许 NIB 文件执行初始化(在 Interface Builder 中具有所有相同的属性),则 NSArrayController 可以正常工作。

为什么行为上有差异?NIB 文件是否以特殊方式初始化这些类型的对象?我对 NSArrayController 的初始化不正确吗?

任何帮助表示赞赏。谢谢。

0 投票
3 回答
2909 浏览

iphone - 分解 iPhone 用户界面——一个 xib 中的多个视图?

我有一个带有关联控制器的主视图。我有一些相当复杂的工具栏,我需要根据用户交互来切换。

为了简单起见,我使用主视图控制器管理工具栏,而不是拥有各种相互交织的依赖关系或非常深的委托链。

无论如何,我怎样才能在一个 xib 中有多个视图并正确初始化它们?就像我想在屏幕中央显示一个自定义视图一样,我该怎么做?

或者,如果我将视图分成多个 xib,如何让它们为它们的 IBOutlets/IBActions 引用相同的控制器对象?

0 投票
4 回答
5770 浏览

iphone - 调用 initWithNibName 不会初始化笔尖中的项目,它有 0x0

当我打电话时:

然后我在调试器中执行此行后立即检查 self.viewController.navController,我发现它是空的(0x0)。

在 DidItViewController 上,我将 navController 定义为:

在我的 nib 文件中,我将 NavigationController 绑定到文件所有者(DidItViewController)上的这个 navController 属性。

为什么我的 navController 没有被创建?有任何想法吗?我想我可能遗漏了一些关于 initWithNibName 工作方式的东西。

谢谢。

0 投票
4 回答
10340 浏览

iphone - 如何将 nib/xib 转换为目标 C 代码?

我只是想知道有没有办法将 nib/xib 文件转换为 ojbective C 代码?我只是想找到 nib/xib 文件的等效代码(我试过 nib2objc,似乎结果不是我想要的)。

其实我想编译这个例子

http://developer.apple.com/iphone/library/samplecode/TableSearch/index.html

没有 nib/xib 文件(我希望它与原始文件完全相同),有什么想法吗?

0 投票
1 回答
1699 浏览

macos - 是否有替代 ibtool 来解析 NIB 文件?

作为 i18n 项目的一部分,我需要以编程方式从 NIB 文件中提取字符串。当然,这可以使用 ibtool 轻松完成。但这是一个跨平台的产品,NIB只是其中的一部分。如果我们不必将字符串提取锁定到特定机器,或者不必将目录合并脚本组合在一起,那就太好了。

所以我意识到这是一个很长的机会,因为对此的需求可能非常低,但是有没有 ibtool 的开源替代品?是否有任何关于 NIB 格式的文档足够可靠,可以从中编写解析器?

0 投票
1 回答
538 浏览

iphone - 哪种设计模式最能代表 iPhone 中的“文件所有者”对象?

我是 iPhone 开发的新手。我读到 xib 中的“文件所有者”负责实例化 nib 中定义的所有对象......想到了某种类型的工厂模式,但也许我没有看大图......

那么,与“文件所有者”概念相关的最接近的设计模式 (gof) 是什么?

0 投票
5 回答
3601 浏览

iphone - 你能把 NIB 文件换成已经在屏幕上的 UIViewController 吗?

例如:

  1. 使用 initWithNibName 创建一个新的 UIVC,使用“nib-v1”
  2. 显示它,例如使用 [(UINavigationController) nav pushViewController: myVC]
  3. 将 myVC 使用的 NIB 更改为“nib-v2”

据我所知,这是许多应用程序的“正确”应用程序设计方法,在分页信息时,您需要两个稍微不同的 UI 屏幕来显示信息。

例如,您的大多数页面都是文本,但其中一些也有图像(想想 RSS 阅读器,其中一些 RSS 条目有文本 + 图像,一些只有文本)。

我之前处理过这个问题,方法是让一个 NIB 文件带有第二个不可见的命名 UIView 实例,我在第一个实例的顶部分层,并根据上下文使用“隐藏”标志打开/关闭。

但这显然是错误的,并且浪费了内存。

但是,我看不到从 NIB 文件“重新加载”视图的明显方法。我猜我想以某种方式重现 initWithNibName 的魔力?

我怀疑这是可能的,但我敢肯定,如果你以“错误的方式”进行操作,那么应用程序将会严重崩溃。

0 投票
2 回答
1535 浏览

iphone - 我如何(重新)在多个视图控制器中使用相同的 Nib

好的,我刚刚输入了整个问题,然后设法将其删除。叹。无论如何,标准披露是我到处搜索并将我的头撞在键盘上并且无法弄清楚这一点。

我正在基于实用程序应用程序模板(带有 MainViewController 和 FlipsideViewController)构建一个基本应用程序。旁注:我仍然不明白 MainView 和 FlipsideView 在这个方案中的目的,所以如果有人能解释它就不会太糟糕了:D

无论如何,在这两个视图的底部我想要一个工具栏。使用 IB 将其添加到给定视图很容易,但我希望工具栏有自己的控制器和模型,因为我想在两个视图中保持其状态一致。因此,我想从笔尖加载该视图,但似乎我做错了什么。我遵循了这里的建议:NSViewController and multiple subviews from a Nib但显然把它搞砸了,所以更深入的了解将不胜感激。

我做了以下事情:我创建了 ToolBarViewController,它基本上是空的,但它是 ToolBar.xib 的文件所有者。在 ToolBar.xib 内部,我有一个带有工具栏大小的框架的视图,并且在工具栏内部有一个工具栏。在 MainView.xib 中,我有一个相同大小的视图元素,它连接到下面代码中的 toolBarView...

在 MainViewController.h 中:

在 MainViewController.m 中:

当我构建和运行时,我收到上面最后一行的警告,即“UIView”可能不会响应“replaceSubview:with”,并且在运行它时会引发以下异常:*** -[MainView replaceSubview:with:]: unrecognized选择器发送到实例 0x450c540

谁能解释我做错了什么?谢谢