使用快速桥接头和框架归档项目时遇到了一些麻烦.它给了我错误,但只有在我存档时.所以我做了一个新项目来进一步测试.
这是我的步骤:
此时,我存档.它成功了.
#import <AsyncDisplayKit/AsyncDisplayKit.h>到桥接标题.这些是此处的说明.
我再次存档,它失败了,有两个错误:
找不到"AsyncDisplayKit/AsyncDisplayKit.h"文件
无法导入桥接头'/Users/Andrew/Desktop/testProject/testProject/testProject-Bridging-Header.h'
这是可以复制的.我似乎完全按照他们的指示行事,除此之外我没有触及过这个项目.
有趣的是,它构建良好,运行良好.但归档,它会给出这些错误.
任何帮助表示赞赏.
编辑:如果我使用CocoaPods导入它,它的工作正常.问题是我专门为我的项目使用Submodules而不是CocoaPods.切换到使用两者作为解决这个问题的方法将是混乱.
上下文: 我使用AsyncDisplayKit来加载包含文本和图像的表.图像从Internet下载,图像大小未知,直到图像下载完毕.
我正在尝试做的事情: 图像下载完成后,我想重新调整大小并布置单元格以适应图像,然后重新调整大小并布置表格以适应新的单元格高度.
到目前为止我做了什么: 我最初只用文本绘制ASTableView并使用ASNetworkingImage委托方法,imageNode:didLoadImage方法在图像下载完成后得到通知.
- (void)imageNode:(ASNetworkImageNode *)imageNode didLoadImage:(UIImage *)image {
// Scale image downloaded from Internet to fit constrained width
// Set networkImageNode to scaled image
UIImage *newimage = [self scaleImage:image toConstrainedWidth:CONSTRAINED_WIDTH];
self.networkImageNode.image = newimage;
// Gets the parent cell
// Recalculate cell size and layout the cell (This works!)
MyAsyncTableCellNode *parentCell = ASDisplayNodeFindClass(self, [MyAsyncTableCellNode class]);
[parentCell invalidateCalculatedSize];
[parentCell measure:CGSizeMake(CONSTRAINED_WIDTH, MAXFLOAT)];
[parentCell layout];
// Attempting to re-layout the table to shift the table cells
// to accommodate for …Run Code Online (Sandbox Code Playgroud) 我有一个链接到a的表视图NSFetchedResultController(即加载数据并跟踪数据的更改绑定到FRC)
我没有AutoLayout在我的单元格中使用(由于它在iOS 8中引入的巨大性能下降).我在单元格中手动布置我的单元格内容(使用-(void)layoutSubviews).另外,行的高度是根据内容计算的,并且正确缓存/无效.
如果与我的数据相关的任何条件发生更改,相关单元格将单独更新(-(void)controllerWillChangeContent:...通过-(void)controllerDidChangeContent:...实现整个委托方法),行更新的动画为:UITableViewRowAnimationNone
这里的问题是,我的细胞有透明背景,我可以看到一些视觉噪声(很可能是实际的细胞被垂直拉伸,我不能肯定地说,因为它们真的是短暂的和短暂的)[self.tableView reloadRowsAtIndexPaths:...];.
我尝试过很多东西都无济于事!
以下是我尝试过的不起作用的内容:
-(CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath,返回估计高度的准确值.self.tableView.rowHeight=UITableViewAutomaticDimension;,帮助很多,但没有解决它.[self.tableView beginUpdates];并启用之后[self.tableView endUpdates];-(void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath有点帮助的事情:
UIKit并不能解决问题.-(void)layoutSubviews在我的单元格中记录该方法表明,每次更新时,具有更新条件的单元格会连续重新加载3次,而其他单元格只会更新一次.我不是强迫任何[cell layoutIfNeeded];或[cell setNeedsLayout];任何地方.[self.tableView reloadData];不是我的选择.最后,我很抱歉我不能分享任何实际的代码,因为它不是一个测试项目,并且实现的复杂性使得任何代码共享都是徒劳的,除非作为一个整体被理解.
谢谢你的时间.
我使用快速桥接标头将Facebook AsyncDisplayKit框架导入我的应用程序,如下所示:
#import <AsyncDisplayKit/AsyncDisplayKit.h>
Run Code Online (Sandbox Code Playgroud)
在构建和运行应用程序时,它总是可以正常工作,但是当我存档时,它给我一个错误:
导入“找不到文件”
为什么在归档时无法识别出该信息?
我一直在尝试使用AsyncDisplayKit框架,我需要检测文本中的url.
我用过ASTextNode但找不到任何api来检测链接.
我读到有linkAttributeNames用于网址检测的属性,但无法找到任何示例如何做到这一点.
有人可以帮助我如何使用上述课程吗?
谢谢
我看到有一个类ASTextKitRenderer,但我不确定这个的正确用法以及如何将它导入到我的swift项目中.
我想为ASTextNode重新创建UILabel的minimumScaleFactor的行为
如此看来,目前ASTableNode且ASTableView都缺乏的部分页眉/页脚视图支持.
我不仅可以找到一个协议方法:
- (nullable NSString *)tableNode:(ASTableNode *)tableNode titleForHeaderInSection:(NSInteger)section
Run Code Online (Sandbox Code Playgroud)
什么都没有.
委托/ dataSource setter方法已被AsyncDisplayKit拦截,因此我无法使用UIKit的方式来执行此操作.
我在使用AsyncDisplayKit时可以添加节头/页脚视图吗?
ios ×6
objective-c ×5
swift ×3
uitableview ×3
xcode ×2
asynchronous ×1
performance ×1
uitextview ×1