问题标签 [uinib]
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.
ios - NSObject 用 nib 加载 UIView 但文件所有者是 UIViewController
我有一个自定义对象,它处理一些带有视图的操作。基本上,它使用 nib 文件初始化 UIView。但我希望我的视图控制器负责处理 IBAction。所以我将我的视图控制器设置为文件所有者并连接 IBActions。
在我的自定义对象中,我像这样加载 nib 文件:
我将我的 UIViewController(有点奇怪)的委托设置为所有者。所以我希望我的视图控制器能够处理 IBAction,但它没有。我的自定义对象试图响应该操作,当然应用程序由于未响应选择器而崩溃。我怎样才能做到这一点?
编辑:
视图控制器
自定义对象
笔尖文件
ios - 从 xib 加载 UITableViewCell (此类与键的键值编码不兼容)
我很好奇使用 xib 文件布局 UITableViewCell 内容的正确方法。当我尝试按照我在互联网上找到的所有步骤时,我总是得到
由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[<NSObject 0x10fe7d790> setValue:forUndefinedKey:]:此类与键 statusLabel 的键值编码不兼容。”
所以这里是相关的代码
在我的 UIViewController 我都试过了
或使用
除了我在标题中提到的例外,这两种方法都失败了。看来,owner:self 错误是因为 UIViewController 没有 IBOutlet 属性。使用 owner:nil 是因为它在内部使用 NSObject 当然也没有 IBOutlet 属性。
我发现的唯一解决方法如下。在我的单元格的 init 方法中,我将返回的视图/单元格添加到我的初始化单元格
例如
这看起来很做作(尽管我也可以将 xib 中的基本类型更改为 UIView 而不是 MyCell 或 UITableViewCell),这使它感觉不那么做作。
我看过很多帖子,人们遇到了这个特定的错误。这通常被解释为 xib 本身的接线问题,但是如果我删除 xib 中的所有连接,它加载正常,但是当我添加回 ui 元素和文件所有者之间的连接时,错误返回,所以我不要认为它与“清理”xib 有任何关系(即使查看 xib 的 XML 也没有列出错误的连接)。
有没有其他人对这个错误是如何产生的有任何想法?
ios - Objective-C 避免 UINib 缓存
我有一个问题。在我的应用程序中,我使用带有大量图像的 xib 文件,并且我注意到 UIViewController 或 UINib 类将 nib 文件的内容缓存在内存中。我不需要这种行为。我需要在 ViewController 解除分配后释放资源。我实际上可以添加一些代码来引起内存警告,但我不确定它不会导致拒绝。如果有人有任何想法,请给出建议。
ios - 数据来自网络时重用 UIViewController 的文件管理器
请帮忙!我正在尝试实现一个与 Web 服务器一起使用的文件管理器
self.tableView.registerNib (UINib (nibName: MaterialCell, bundle: nil), forCellReuseIdentifier: MaterialCell)
我有相同的数据,所以我想再次使用 UIViewController 并在didSelectRowAtIndexPath
这里写下这段代码
var viewController = FloderViewController () self.navigationController!.pushViewController`
问题是我从网络获取数据,当我尝试重新使用 UIViewController 时出现错误
致命错误:在展开可选值时意外发现 nil
我做错了什么,我该如何实施!谢谢你的帮助
编辑:
这是我的代码
ios - 使用 UIDatePicker 加载 nib 和实例化视图需要大量时间
我有两个视图的简单 xib:带有日期选择器的容器视图和带有条形按钮的工具栏。我将它用作我的inputView
输入字段( )。但是我遇到了性能问题:我注意到加载这个 xib 文件的 nib 并从 nib 实例化视图需要大约 500 毫秒(使用 Time Profiler 仪器工具计算)。因此,我没有将日期选择器添加到 xib,而是以编程方式创建它并使用 vuela!,实例化只需要大约 30 毫秒。代码示例非常简单:inputAccessoryView
<UIKeyInput>
我的类别在哪里[UINib loadCachedForKey:]
,它的实现就像方法名称听起来一样简单,所以我认为在这里发布它是没用的。
我也有一个类似的 xib,但使用 UIPicker 并且它的实例化速度很快(约 70 毫秒)。以编程方式添加日期选择器确实对我有用,但问题是
我做错了什么还是正常行为?
ios - 如何将文件的所有者设置为从 nib 加载的自定义 UITabelViewCell?
我有一个UITableViewCell
从 xib 文件加载的自定义,并以视图控制器作为其所有者进行实例化:
一切正常,但File's Owner
为空,因此我无法从实现内部访问我的视图控制器TableViewCell
:
为什么File's Owner
没有设置属性?有没有办法将视图控制器连接到TableViewCell
笔尖?
ios - 快速加载 nib 文件
尝试连续加载几百UINib
个并且非常快(在不到 0.5 秒的时间内一个接一个地加载)。
UINib
包含UIButton
和相对较小的图像(每个笔尖不同)。
我试过这个:
和这个:
最后一个速度快了几毫秒,CPU 使用率分别为 92% 和 97%。
哪种方式可以更快地加载这些笔尖?还是有更好的方法来做到这一点?
谢谢
ios - TableViewCell 的 Nib 文件中的视图大小
我正在尝试获取UIImageView
nib 文件中的宽度以使其变为圆形,但我得到了错误的值
这是我的代码:
}
在表视图中:
xcode - 无法将自身添加为子视图 - 将 xib 文件添加为子视图时
我试图将一个 xib 文件作为子视图放在我的主视图控制器中,我收到一条非常奇怪的错误消息;
当我有这个代码时:
我有这个错误信息:
但是当我有这个代码时:
或者只是这个:
它正在工作......那么,为什么第一个代码不起作用!?
编辑 :
当我试图放置两个子视图时:
它不再使用相同的错误消息:
ios - 来自笔尖的IOS loadingView
我有这个优化问题。我在 nib 中有一个由图片和标签组成的视图。这是我从笔尖加载它的方式:
每次加载都需要相当长的时间。我的 UI 在这些 customView 上相当繁重,我需要能够创建大约 50 个并将它们放置在不阻塞 mainThread 的情况下。使用带有框架的 init 创建它们需要 170 毫秒,而将它们作为子视图放置在我的 vc 中需要 350 多毫秒。在这种情况下,有什么建议可以减轻主线程的负载吗?也许程序化方法会比笔尖更好?