问题标签 [loadnibnamed]
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.
iphone - 奇怪的 xib 文件到 nib 转换问题
我试图在 Xcode 4.5.2 上添加一个新的视图控制器,我使 xib 文件与 5.1 兼容,开始玩它,突然注意到这个自定义表格视图单元根本没有被加载,它总是在加载时造成崩溃。
[self.cellNib instantiateWithOwner:self options:nil];
我开始检查正在创建的 .app 文件,我可以看到除了这个新的自定义表格视图单元格 nib 文件之外,所有其他 xib 都在“nib”扩展名中。什么设置可以使这个xib文件像其他人一样转换为nib。
ios - 性能差异:loadNibNamed 与编程方式
我有一个视图控制器,其中包含许多自定义 UIView。我尝试使用 InterfaceBuilder (IB) 定义的自定义 UIView,并使用以下代码在 initWithFrame 中加载它:
视图控制器表现得非常慢,所以我决定尝试以编程方式加载自定义 uiview 的项目。Vòila,速度提高了大约 7 倍。
为什么加载 XIB 文件和使用“干净”代码之间的差异如此之大?我能想到的第一个假设是 IB 默认设置了很多属性,而在代码中定义它们时它们只是 nil。但它无法解释巨大的性能差异!我还没有找到任何明确警告您不要出于性能原因使用 IB 的帖子。
编辑:我刚刚找到了这个链接,因此这篇博文解释了关于何时从光盘加载 xib 文件的有趣事情。我想从光盘加载解释了差异。/K
ios - 有人可以解释 iOS 中的文件所有者吗
提前为这个问题道歉,尽管自 iOS 出现以来已经详细讨论过。但我仍然不明白,尽管我尽了最大的努力。我能画出的最接近的图像是“冻结和干燥的对象图”,这很好,但是当涉及到原始编程时,这无助于连接点。
所以,考虑到在你弄清楚什么是做什么之前,你无法真正描述任何东西,让我们看下面的例子:
1) 我有一个 Xib 文件,比如一个 UIView,带有标签和 imageView
2) 我有一个 classX,它是 UIView 的子类,它附加到 IB 身份检查器中的 Xib。IB 出口和 IB 动作在连接检查器中连接到此类。此类将 IB/IA 声明为属性。
3) 我有一个 UIViewController,由 classVC 表示。在这个类中,我使用标准实例化 1)[[NSBundle mainBundle] loadNibNamed:@"bla" owner:??? options:nil][0];
4) classX 和 classVC 通过自定义委托、标准东西进行通信。
问题:
a) XIB 文件的所有者是什么。老实说,我不知道。
b)我[[NSBundle mainBundle] loadNibNamed:@"bla" owner:??? options:nil][0];
为所有者参数输入了什么,最重要的是,为什么?
当对象图解冻和浇水时,运行时不应该连接 2) 中定义的 Outlets,那么在这种情况下文件所有者的意义何在?
或者
如果 XIB 文件 Outlets 没有连接到任何东西,“文件的所有者”是否意味着“我是包含所有必需的 OUTlets 的类,以便可以在该类实例和解压缩的 XIB 之间建立连接?(这就是为什么我不明白了,因为如何建立关联???)
就是这样了。和以前一样傻。
编辑:我不同意其他答案同样有效的事实。我理解他们的意思,但到目前为止,我还没有理解 owner 参数在我描述的情况下应该包含什么,最重要的是,为什么。
xcode - 自定义单元加载 NIb 在 ios 6 上工作,但在 ios 5 上崩溃
与 ios 6 模拟器完美配合,但在 ios 5 模拟器上崩溃并出现以下错误:“NSInternalInconsistencyException”,原因:“NIB 数据无效。
苹果改变了什么?
ios - 由于 UITableView 数据源导致的应用程序崩溃必须在 iOS 5.1 模拟器中从 tableView:cellForRowAtIndexPath: 返回一个单元格
它在 iOS 6 模拟器上运行良好。在 iOS 5.1 模拟器上,当我第一次运行它时,它由于以下异常而崩溃。
*由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“UITableView 数据源必须从 tableView 返回一个单元格:cellForRowAtIndexPath:”
这是我的代码
在 listTableCell.xib 中,我将 File's Owner 设置为我的表格视图控制器。我在我的表格视图控制器中正确地制作了一个插座作为 nibLoadCellForListDetails 。
iphone - 带有coreplot的其他nibs子视图中的nibs视图,cpgraph将超级视图作为其属性
我将 A-viewcontrollers 视图加载到其他 B-viewcntrollers 子视图 ( UIview
),A 正在使用图形coreplot
并初始化 CPTgraph。当'A'初始化它的所有属性时,比如:数组或标签是cptgraph实例的属性,所以它给了我错误。谁能帮我解决这个问题。提前致谢。
错误是:
ios - topLevelObjects 的 loadNibNamed 泄漏
我正在使用自定义单元格并调用loadNibNamed:
. 这似乎会导致内存泄漏,我不知道如何解决它。如果我将顶级对象设置为nil
之后,我仍然会泄漏。
然后我这样做
然后改变单元格上的属性。
自定义单元格对属性有强引用,它不是循环引用,所以我不确定这是否是问题所在。使用 ARC 时停止这种废弃内存的正确方法是什么?
objective-c - Objective-C /来自xib的称重传感器/需要解释
好的,我知道如何通过以下代码从 xib 加载自定义单元格:
但是有人可以解释第一行是做什么的吗?
我每次都觉得很愚蠢,不知道它是如何工作的。
ios - 如何添加已经有 UIView 的子视图?
使用以下内容我可以创建一个视图,然后将一个笔尖加载到其中:
这是问题所在,当我的 xib 文件已经包含一个UIView
时,XCode 只记录“lldb”,但是假设我删除UIView
xib 文件中的 并添加任何其他对象,它显示得非常好。
但是因为我想加载整个UIView
里面的所有东西,我更喜欢找到一种方法来加载 nib 的UIView
.
谢谢你的帮助。
ios - 使用 loadNibNamed 的 iOS SDK,“init”中的代码未按预期工作
我有一个 .nib 文件UIView
。我有一个UIView
名为 '的子类FluidInfo
。我使用我的函数' '使它UiView
在我的内部显示为弹出窗口viewController
createFormulaPopup
我已将我UIView
的子类设为FluidInfo
. 当我创建出口和动作时,它们都正常工作。
问题是我的init
功能UIView
出乎意料地工作。如果我记录一些东西,那么它会与我的弹出窗口同时出现。但如果我设置了类似视图背景颜色的东西,它似乎会消失。如果我在界面生成器中设置它,它会粘住。如果我将颜色的变化附加到其中的一个动作上,UIView
那么它也会起作用。但是当视图被初始化时,它似乎撤消了我以编程方式完成的所有事情。