2017-04-02 29 views

回答

0

正如錯誤解釋的那樣,當您在類級別的方法之外初始化屬性時,不能使用實例成員。將數組初始值設定項保留在類級別,並在方法內將其屬性添加到它。

var imageViews = [UIImageView]() 

override func viewDidLoad(){ 
    imageViews = [pos_1,pos2] 

    //or 
    imageViews.append(pos_1) 
    imageViews.append(pos_2) 
} 
0

你宣佈imageViews爲常數(一個單獨的問題),然後在viewDidLoad中再次重新聲明它。您不需要重新聲明它(或者您可以在viewDidLoad中聲明一次)

+0

它目前工作它viewDidLoad。我想從viewDidLoad中取出它,以便它可以在2個獨立的方法中使用(其中之一是viewDidLoad)。 –

+0

只需在班級的首位申報。然後在viewDidLoad中,像你一樣直接進入For/In循環(即刪除那裏的重新聲明)。 – Oprimus

+0

我想投這個答案,因爲它確實是正確的。唯一缺少答案的是*爲什麼*,並且根據OP的評論,* real *問題是什麼 - 變量範圍。補充一點,這指出它。 – dfd

相關問題