Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 点击按钮时按顺序显示json图像_Ios - Fatal编程技术网

Ios 点击按钮时按顺序显示json图像

Ios 点击按钮时按顺序显示json图像,ios,Ios,我想要的是,我有五个按钮,我必须检索json中的五个图像(1,2,3,4,5),然后如果我必须点击第一个按钮,则表示按1,2,3,4,5顺序显示图像,选择第二个按钮后表示按2,3,4,5,1顺序显示图像,选择第三个按钮意味着按3,4,5,1,2顺序显示图像,选择第四个按钮意味着按4,5,1,2,3顺序显示图像,选择第五个按钮意味着按5,1,2,3,4顺序显示图像,这就是我的问题,你能指导我完成这个操作吗,非常感谢您提供的任何解决方案。您需要标记您的按钮以确定按下了哪个按钮,并且在您各自的操作中,

我想要的是,我有五个按钮,我必须检索json中的五个图像(1,2,3,4,5),然后如果我必须点击第一个按钮,则表示按1,2,3,4,5顺序显示图像,选择第二个按钮后表示按2,3,4,5,1顺序显示图像,选择第三个按钮意味着按3,4,5,1,2顺序显示图像,选择第四个按钮意味着按4,5,1,2,3顺序显示图像,选择第五个按钮意味着按5,1,2,3,4顺序显示图像,这就是我的问题,你能指导我完成这个操作吗,非常感谢您提供的任何解决方案。

您需要标记您的按钮以确定按下了哪个按钮,并且在您各自的操作中,您需要检索标记以确定点击的按钮。我不会描述如何标记按钮,因为您可以从堆栈溢出中获得答案。但是为了这个例子,我直接存储在图像中,您可以检索并将响应从JSON转换为相应的数组

var images: [[String: AnyObject]] =  [
        [ "image1" : "www.image1.com", "id" : 1 ],
         [ "image2" : "www.image2.com", "id" : 2 ],
         [ "image4": "www.image4.com", "id" : 4 ],
         [ "image3": "www.image3.com", "id" : 3 ],
         [ "image5": "www.image5.com", "id" : 5 ]]
从JSON获取阵列后,需要对其进行排序,如下所示:

images.sort {($0["id"] as? Int ) < ($1["id"] as? Int)}
您将按照如下所示的要求检索图像


你的JSON结构是什么样子的?代码:[{“image1”:“www.image1.com”,“id”:1,},{“image2”:“www.image2.com”,“id”:2,},{“image3”:“www.image3.com”,“id”:3,},{“image4.com”,“id”:4,},{“image5.com”,“id”:5,}]你好,伊迪杜,我只知道目标c,但在swift中,一些代码只理解剩余的东西,我无法理解,所以请你解释一下,我必须学习
func imagesForButtonIndex(_ buttonIndex: Int) -> [[String: AnyObject]]   {
    var sortedImages = images.filter { ($0["id"] as? Int) >= buttonIndex}
    sortedImages.append(contentsOf:images.filter {($0["id"] as? Int) < buttonIndex})
    return sortedImages
}
imagesForButtonIndex(5)