Ios 通过单击按钮显示或隐藏项目

Ios 通过单击按钮显示或隐藏项目,ios,swift,xcode,Ios,Swift,Xcode,我在XIB中有四个imageview内容和一个覆盖所有XIB的按钮。我想在用户点击按钮时,显示第一个imageview,隐藏下一个点击,并显示第二个imageview,依此类推,直到显示/隐藏所有我的imageview。最有效的方法是什么 我建议您使用一个状态变量,该变量包含一个列出各种状态的枚举(firstImageVisible,secondImage…),然后您可以在枚举中使用一个函数切换到下一个状态(按钮操作的目标),您还可以轻松地遍历枚举的状态,检查caseitrable协议的文档。通

我在XIB中有四个imageview内容和一个覆盖所有XIB的按钮。我想在用户点击按钮时,显示第一个imageview,隐藏下一个点击,并显示第二个imageview,依此类推,直到显示/隐藏所有我的imageview。最有效的方法是什么

我建议您使用一个状态变量,该变量包含一个列出各种状态的枚举(firstImageVisible,secondImage…),然后您可以在枚举中使用一个函数切换到下一个状态(按钮操作的目标),您还可以轻松地遍历枚举的状态,检查
caseitrable
协议的文档。通常,在状态上有一个属性观察者(didSet)是一个方便的地方,可以更新UI的其他部分,这些部分需要在每次状态更改时进行更改。

我建议您使用一个状态变量,该变量包含列出各种状态的枚举(firstImageVisible,secondImage….)然后,您可以在枚举中使用一个函数,该函数可以切换到下一个状态(按钮操作的目标)。您还可以轻松地遍历枚举的状态,查看文档中的
CaseIterable
协议。通常,在状态上有一个属性观察者(didSet)是一个方便的地方,可以更新UI的其他部分,这些部分需要在每次状态更改时进行更改。

将所有
UIImageView
保存到
数组中,并将当前显示的
imageView
保存到一个变量中,它可能如下所示:

var-imageview:[UIImageView]=[]
var currentImageViewIndex=0{
迪塞特{
如果currentImageViewIndex>=imageViews.count{currentImageViewIndex=0}
imageViews[oldValue]。isHidden=true
imageViews[currentImageViewIndex].isHidden=false
}
}
func handleTap(){
currentImageViewIndex+=1
}

将所有
ui图像视图
保存到
数组
,并将当前显示的
imageView
保存到变量中,它可能如下所示:

var-imageview:[UIImageView]=[]
var currentImageViewIndex=0{
迪塞特{
如果currentImageViewIndex>=imageViews.count{currentImageViewIndex=0}
imageViews[oldValue]。isHidden=true
imageViews[currentImageViewIndex].isHidden=false
}
}
func handleTap(){
currentImageViewIndex+=1
}