"预期宣言"在斯威夫特

时间:2016-04-26 02:11:22

标签: swift swift2

我试图编写一个有两个图像的程序。我使用4个按钮UP,DOWN,LEFT,RIGHT来移动一个图像。 如果该图片到达另一个图片,则会显示一个文字字段:"您是赢家!"。

然而,包含代码If ...的行总是得到"预期声明"错误。我怎么能让它运行,请问?

这是整个代码,两个图像的名称是ConChimCu和Trung:

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var txtBai: UITextView!
    @IBOutlet weak var ConChimCu: UIImageView!
    @IBOutlet weak var Trung: UIImageView!

    @IBAction func Up(sender: AnyObject) {
       ConChimCu.frame.origin.y = ConChimCu.frame.origin.y - 2
   }

    @IBAction func RIGHT(sender: AnyObject) {
        ConChimCu.frame.origin.x = ConChimCu.frame.origin.x + 2
    }

    @IBAction func DOWN(sender: AnyObject) {
        ConChimCu.frame.origin.y = ConChimCu.frame.origin.y + 2
    }

    @IBAction func LEFT(sender: AnyObject) {
        ConChimCu.frame.origin.x = ConChimCu.frame.origin.x - 2
    }

    if ConChimCu.frame.origin.x == Trung.frame.origin.x { txtBai.text = "You are the winner!"
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

2 个答案:

答案 0 :(得分:2)

你的if语句必须在函数内。

实施例

SELECT s.tickedNum, s.ticketSummary,
      CASE
         WHEN s.id in (100) THEN 'Team A'
         WHEN s.id in (200) THEN 'Team B'
         WHEN s.id in (300) THEN 'Team C'
         ELSE 'Unknown'
      END AS Team,
FROM supportTable s
WHERE s.id = 200  /* equivalent to 'Team B' */

答案 1 :(得分:0)

你在这里做错了两件事。

  1. 您已将IF条件写入功能范围之外。 (正如@Kingslayerpy建议的那样)
  2. 即使在纠正之后如果条件你没有调用它。 (根据我的理解,根据你的评论)
  3. 所以这是解决方案。

    创建像

    这样的函数
    func checkCollision() {
        if ConChimCu.frame.origin.x == Trung.frame.origin.x { 
            txtBai.text = "You are the winner!"
        }
    }
    

    并从您的每个按钮操作中调用它。

    e.g。

    @IBAction func Up(sender: AnyObject) {
        ConChimCu.frame.origin.y = ConChimCu.frame.origin.y - 2
        checkCollision()
    }
    

    享受;]