小编Eva*_*van的帖子

在UICollectionView/UICollectionViewLayout上禁用交叉淡入淡出的最佳最佳方法是旋转还是限制更改?

我有一个子类UICollectionViewLayout,将单元格放在一个圆圈中.布局返回YES呼叫shouldInvalidateLayoutForBoundsChange:.旋转时,初始位置的单元格淡出,最终位置的单元格淡入.

通过在我的布局中添加以下代码,我可以禁用淡入淡出,并且项目的圆圈似乎只是随着方向更改而旋转:

- (UICollectionViewLayoutAttributes *)initialLayoutAttributesForAppearingItemAtIndexPath:(NSIndexPath *)itemIndexPath {
    return nil;
}

- (UICollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingItemAtIndexPath:(NSIndexPath *)itemIndexPath {
    return [self layoutAttributesForItemAtIndexPath:itemIndexPath];
}
Run Code Online (Sandbox Code Playgroud)

为什么这些方法会在边界变化时调用,因为文档似乎没有暗示它们会这样做?文档似乎表明它们被称为与从集合视图中插入和删除项目相关.

是否有更好的方法可以在旋转期间禁用交叉淡入淡出?

笔记:

  • initialLayoutAttributesForAppearingItemAtIndexPath:文档声明默认情况下该方法返回nil但调用super返回的非零值.
  • 我在UICollectionView方法上设置了符号断点 UICollectionView,deleteItemsAtIndexPaths:并且 moveItemAtIndexPath:toIndexPath:在旋转期间都没有命中它们.

iphone cocoa-touch uikit ios uicollectionview

14
推荐指数
1
解决办法
4141
查看次数

部署应用程序后,Google App Engine HTTP标头内容类型不正确

我正在GAE上编写一个应用程序,我有一个URL,它将始终返回XML并将Content-Type设置为"text/xml; charset=utf-8".

我正在使用内置的webapp框架并使用以下代码来设置内容类型并在Web处理程序中返回XML:

self.response.headers.add_header('Content-Type',"text/xml; charset=utf-8")
self.response.out.write(template.render("my_xml",{"key1":"val1"}))
Run Code Online (Sandbox Code Playgroud)

这在本地开发环境中运行良好,但是一旦部署到Google服务器,内容类型始终设置为"text/html; charset=utf-8".

如何Content-Type在Google服务器上运行后确保设置正确?

google-app-engine webapp2

5
推荐指数
1
解决办法
4970
查看次数