ios - 处理具有不同尺寸 JSON 的多个图像

标签 ios json

"pictures": {
      "sizes": [
        {
          "width": 100,
          "height": 75,
          "link": "https://i.vimeocdn.com/video/566955426_100x75.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_100x75.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        },
        {
          "width": 200,
          "height": 150,
          "link": "https://i.vimeocdn.com/video/566955426_200x150.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_200x150.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        },
        {
          "width": 295,
          "height": 166,
          "link": "https://i.vimeocdn.com/video/566955426_295x166.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_295x166.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        },
        {
          "width": 640,
          "height": 360,
          "link": "https://i.vimeocdn.com/video/566955426_640x360.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_640x360.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        },
        {
          "width": 960,
          "height": 540,
          "link": "https://i.vimeocdn.com/video/566955426_960x540.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_960x540.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        },
        {
          "width": 1280,
          "height": 720,
          "link": "https://i.vimeocdn.com/video/566955426_1280x720.jpg?r=pad",
          "link_with_play_button": "https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F566955426_1280x720.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png"
        }
      ]
    },

我正在开发一个 iOS 应用程序。 这是我从 Vimeo API 使用的 JSON,我想知道处理这些不同图像的正确方法是什么。我想抓取高度为 540 的高度,但在某些情况下,高度可能为 541 或其他。还有如果没有高度为540的图片,我是不是应该默认抓取最后一张图片?处理这个问题的正确方法是什么?我是否应该尝试抓取倒数第二张图片(大多数情况下高度为 540 的图片),如果只有一张图片,则抓取那一张?从生产的角度来看,这种情况通常是如何处理的?非常感谢您的帮助!

最佳答案

你的逻辑由你决定。遍历图像列表并找到恰好为 540 的图像。如果不存在,则由您决定使用什么。您可以使用最接近 540 的值(根据您的需要选择更大或更小的值)。选择下一个更大的可能是最好的。将较大的图像缩小一点通常比尝试将较小的图像放大显示更好。

关于ios - 处理具有不同尺寸 JSON 的多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43011388/

相关文章:

json - AFNetworking 3.x AFHTTPSessionManager 和 AFURLSessionManager 有什么不同?

ios - 带有凭据的 OpenUrl 和 itms-services

ios - 关于iOS 14导航栈管理的问题(不同于iOS 13)

iphone - 奇怪的 `isKindOfClass` 行为

ios Swift - 初始化许多 AVAudioPlayer 与许多字符串\路径

objective-c - NSJSONSerialization 不创建可变容器

python - python读取多个json文件来查找共同的键值对

php - 不同的 JSON 响应 - {"count":"123"} vs {"count"= >"123"}

ios - 一个 TableView 中的多个 NSFetchedResultsController

java - 如何在不将其加载到内存的情况下解析巨大的 JSON 文件