2017-08-03 10 views
2

ラベルの位置を変更する方法はたくさん読んでいましたが、できません。 は、ここに私の単純なコードすぐにラベルの位置を変更する方法

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet weak var TEKST: UILabel! 
    @IBOutlet weak var klik: UIButton! 
    override func viewDidLoad() { 
     super.viewDidLoad() 
     view.backgroundColor = UIColor.green 
     // Do any additional setup after loading the view, typically from a nib. 
    } 

    @IBAction func kliksad(_ sender: UIButton) { 
     if (view.backgroundColor==UIColor.green){ 
      TEKST.isHidden = false 
      TEKST.text = "Hi" 
      view.backgroundColor = UIColor.red 
      TEKST.frame.size.width = view.frame.size.width 
     } else if(view.backgroundColor == UIColor.red) { 
      view.backgroundColor=UIColor.green 
      TEKST.textColor=UIColor.purple 
      TEKST.text = " Hello " 
      TEKST.frame.origin = CGPoint(x: 10, y: 50) 
      print(TEKST.frame) 
     } 
    } 
} 
+2

ラベルにはストーリーボードの制約がありますか?はいの場合は、ラベルを移動するためにラベルを変更する必要があります。 – RomanN

+0

@RomanNそれらを削除する必要がありますか? –

+0

ラベルを移動するには、制約の値を更新するだけです。 labelLeftConstraint.constant = 50 view.layoutIfNeeded() – RomanN

答えて

0

私のためにチェックして取り組んで

制約付き1)ラベル

enter image description here

enter image description here

2)私のコード

labelToMove.frame.origin = CGPoint(x: 20, y: 20) 

[![ここに画像の説明を入力します] [3] [3]

3)

enter image description here

を引き起こす第二 これはあなたのボタンアクションコード

if (view.backgroundColor==UIColor.green){ 
      TEKST.isHidden = false 
      TEKST.text = "Hi" 
      view.backgroundColor = UIColor.red 
      TEKST.frame.size.width = view.frame.size.width 
     } else if(view.backgroundColor == UIColor.red) { 
      view.backgroundColor=UIColor.green 
      TEKST.textColor=UIColor.purple 
      TEKST.text = " Hello " 
      TEKST.frame.origin = CGPoint(x: 10, y: 50) 
      print(TEKST.frame) 
     } 

であるあなたは、 View.colorを緑色で初期化しましたdidLoadでは を実行しています。色が緑色かどうかをチェックしています。赤色にし、else if文、秒ここでは実行されません

@IBAction func MOveLabell(_ sender: Any) { 
     if (view.backgroundColor==UIColor.green){ 
      view.backgroundColor = UIColor.red 
     } 

     if(view.backgroundColor == UIColor.red) { 
      view.backgroundColor=UIColor.red 
      labelToMove.frame.origin = CGPoint(x: 20, y: 20) 
     } 

    } 
関連する問題