当文本被放入标签时,Xcode会出现问题

这是我的情况:

示例UI

有8个ImageViews。 左边的4在我的代码中被调用(从顶部开始):Left1,Left2,Left3,left4。 右边的4(总是从顶部开始):Right1,Right2,Right3,Right4。

然后在中间有两个红色的button:“上”和“下”和一个标签。

应该发生的是,当按下button时,所有的ImageViews都会在代码中设置的屏幕上方(所以它们的center.y <0)位于上方,当发生这种情况时标签文字设置为“上”。 相反,当按下button时,所有ImageView将返回到初始位置,并将标签文本设置为“Down”。

反而会发生的是label.text根据我的代码而改变,但是我的ImageView不会移动。

这是我的代码:

首先我宣布的对象:

class ViewController: UIViewController { @IBOutlet weak var Up: UIButton! @IBOutlet weak var Down: UIButton! @IBOutlet weak var Lab: UILabel! @IBOutlet weak var Left1: UIImageView! @IBOutlet weak var Left2: UIImageView! @IBOutlet weak var Left3: UIImageView! @IBOutlet weak var Left4: UIImageView! @IBOutlet weak var Right1: UIImageView! @IBOutlet weak var Right2: UIImageView! @IBOutlet weak var Right3: UIImageView! @IBOutlet weak var Right4: UIImageView! 

视图加载我隐藏所有的ImageViews:

 Left1.hidden = true Left2.hidden = true Left3.hidden = true Left4.hidden = true Right1.hidden = true Right2.hidden = true Right3.hidden = true Right4.hidden = true 

然后是两个button操作:

button上

  @IBAction func Up(sender: AnyObject) { Lab.text = "Up" //-------- 1 ----------// Right1.center.y = 0 - 31 Left1.center.y = 0 - 31 Right1.hidden = false Left1.hidden = false //-------- 2 ----------// Right2.center.y = 0 - 300 Left2.center.y = 0 - 300 Right2.hidden = false Left2.hidden = false //-------- 3 ----------// Right3.center.y = 0 - 650 Left3.center.y = 0 - 650 Right3.hidden = false Left3.hidden = false //-------- 4 ----------// Right4.center.y = 0 - 960 Left4.center.y = 0 - 960 Right4.hidden = false Left4.hidden = false } 

在这里,我把标签文本为“向上”,对于每一对ImageView(当我说我的夫妇,我的意思是ImageViews在图像( 1 )的顶部是夫妇1,底部夫妇4)我将他们的center.y设置为屏幕上方的值,然后显示出来。

button向下

 @IBAction func Down(sender: AnyObject) { Lab.text = "Down" //-------- 1 ----------// Right1.center.y = 92 Left1.center.y = 92 //-------- 2 ----------// Right2.center.y = 171 Left2.center.y = 171 //-------- 3 ----------// Right3.center.y = 249 Left3.center.y = 249 //-------- 4 ----------// Right4.center.y = 326 Left4.center.y = 326 } 

在这里,我只是把标签文本“下来”和ImageViews回到初始位置。

现在,这应该是完美的,但是会发生的是,当我按下向上button时,标签文本被更改为up,但ImageViews不会移动,只是出现。

相反,如果我评论标签说明,那么它的工作原理是:

button上

 @IBAction func Up(sender: AnyObject) { //Lab.text = "Up" //-------- 1 ----------// Right1.center.y = 0 - 31 Left1.center.y = 0 - 31 Right1.hidden = false Left1.hidden = false //-------- 2 ----------// Right2.center.y = 0 - 300 Left2.center.y = 0 - 300 Right2.hidden = false Left2.hidden = false //-------- 3 ----------// Right3.center.y = 0 - 650 Left3.center.y = 0 - 650 Right3.hidden = false Left3.hidden = false //-------- 4 ----------// Right4.center.y = 0 - 960 Left4.center.y = 0 - 960 Right4.hidden = false Left4.hidden = false } 

button向下

  @IBAction func Down(sender: AnyObject) { //Lab.text = "Down" //-------- 1 ----------// Right1.center.y = 92 Left1.center.y = 92 //-------- 2 ----------// Right2.center.y = 171 Left2.center.y = 171 //-------- 3 ----------// Right3.center.y = 249 Left3.center.y = 249 //-------- 4 ----------// Right4.center.y = 326 Left4.center.y = 326 } 

通过这种方式,ImageViews就像他们应该的那样移动,但是标签文本当然不会改变。

标签和图片浏览之间是否有任何关系?

我真的希望你能帮助我,这是疯狂的。

谢谢