我看过这个问题,它是类似的:How to deal with empty items section in UICollectionView CompositionalLayout,但答案似乎是在快照中留下部分(我这样做,但这留下了另一个问题,我描述了这个问题)稍后)或渲染一个非常小的部分。该解决方案似乎不是一个好的解决方案。
我有一个集合视图,使用具有可比较数据源的组合布局。集合视图有四个部分,但每个部分都是可选的,这意味着如果该部分的相应数据为空,则不应显示该部分。
我有一个部分提供程序,它使用sectionIndex来配置每个部分的外观。我认为这很糟糕,因为例如,如果我在快照中没有第三部分的数据,那么通常应该在第四部分中的所有内容现在都会有一个索引路径,这将导致它像第三部分一样布局。
每个部分都有不同的项目大小,有些是正交滚动部分。因此,如果使用第三部分布局呈现第四部分数据,那么它看起来会是错误的。
NSCollectionLayoutSection * _Nullable (^sectionProvider)(NSInteger, id<NSCollectionLayoutEnvironment> _Nonnull) = ^NSCollectionLayoutSection * _Nullable (NSInteger sectionIndex, id<NSCollectionLayoutEnvironment> _Nonnull layoutEnvironment) {
if (sectionIndex == 0) {
//configure and return a layout for the first section
} else if (sectionIndex == 1) {
//configure and return a layout for the second section
} else if (sectionIndex == 2) {
//configure and return a layout for the third …Run Code Online (Sandbox Code Playgroud) ios uicollectionview nsdiffabledatasourcesnapshot uicollectionviewcompositionallayout uicollectionviewdiffabledatasource
我正在使用 Newtonsoft JSON 库来反序列化来自 Web 服务的响应。问题是某些字段包含无效的值。例如,一条记录上的一个字段包含一个“T”,表示一个应该是数字的字段。我想要做的是将无效字段的值设置为 null 或其他一些默认值。我的所有属性都被定义为可为空的,所以如果它们默认为空就可以了。
有没有办法做到这一点?我曾尝试创建自定义 JsonConverters,但我宁愿不必为每种类型定义 JsonConverter。如果可能,我希望对于所有字段,如果该属性的值无效(例如数字类型的“T”),则将它们设置为 null。
我已经查看了 OnError 事件处理程序,但这似乎丢弃了整个错误记录。我不想丢弃任何记录。我只想让无效属性的值为空。
这可能吗?我已经寻找了很多答案,但我没有找到另一个试图这样做的问题,但是如果我忽略了一个现有的问题,请告诉我。
感谢您的帮助。
有谁知道如何在 Xcode 的视图调试器中查看 AutoLayout 问题?在视图层次结构窗口中,我得到以下信息,显示我的按钮组件的“4 个问题”,但如何找出这四个问题是什么?无法单击它,并且当我展开该元素时,所有子视图都没有显示任何问题。我似乎找不到任何解释如何找出这四个问题的内容。
ios ×2
autolayout ×1
c# ×1
json ×1
json.net ×1
lldb ×1
nsdiffabledatasourcesnapshot ×1
uicollectionviewcompositionallayout ×1
uicollectionviewdiffabledatasource ×1
xcode ×1