2016-04-26 60 views
0

我正在使用這款報價應用程序,並且我一直遇到兩個只是不想與我合作的錯誤。它說「類型'businessQuote'沒有成員('array'/'dict')」。在以下屏幕截圖中,您將看到該行上的錯誤。關鍵在於讓應用程序在提供的文本字段中顯示隨機引號。你可以幫我嗎?先謝謝你。類型'___'沒有會員'array'

Code with the error

我的目標是獲得「ImportList」工作

'ImportList' Swift file

如果有這樣一個問題,我都忽略了,我將不勝感激,如果你能聯繫我它。但我真的需要一個答案。再次感謝你。

這裏是有錯誤的代碼:

import Foundation 
import UIKit 
import Social 

class businessQuote: UIViewController { 

//============================// 
//********** Outlets *********// 
//============================// 

let utility = Utility() 
@IBOutlet weak var quoteDisplay: UILabel! 
@IBOutlet weak var authorDisplay: UILabel! 
@IBOutlet weak var quoteBackground: UIImageView! //GET BACK TO THIS 

//============================// 
//********** General *********// 
//============================// 

let date = NSDate() 
var Author: String = "" 
var Quote: String = "" 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Checks if time is greater then 3pm to change background 
    let currentTime = utility.currentTime() 
    if (currentTime >= 15) { 
     quoteBackground.image = UIImage(named: "quote_background.png") 
    } else { 
     quoteBackground.image = UIImage(named:"morning_quote_background.png") 
    } 
} 

//============================// 
//********* New Quote ********// 
//============================// 

    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
    // Generates Random Number 
    func randomNumber(arrayLength: Int) -> Int { 
     let unsignedArrayCount = UInt32(arrayLength) 
     let unsignedRandomNumber = arc4random_uniform(unsignedArrayCount) 
     let randomNumber = Int(unsignedRandomNumber) 


     return randomNumber 
    } 

    // Importing Quotes plist File 
    let businessQuotes = ImportList(FileName: "BusinessList") 

    // Selects Quote 
    let chosenQuote: String = businessQuote.array[randomNumber(businessQuote 
     .count())] as! String 
    let chosenAuthor = businessQuote.dict[chosenQuote]! as String 

    // Assigns Quote & Author to IBOutlet 
    Author = chosenAuthor 
    Quote = chosenQuote 

    quoteDisplay.text = Quote 
    authorDisplay.text = Author.uppercaseString 

}

}

這與 '陣列' 和 '字典'

import Foundation 

struct ImportList { 
let path: String 

init(FileName: String) { 
    self.path = NSBundle.mainBundle().pathForResource("\(FileName)", ofType: "plist")! 
} 

var dict: Dictionary<String, String> { 
    return NSDictionary(contentsOfFile: path)! as! Dictionary 
} 

var array: Array<AnyObject> { 
    return [String](arrayLiteral: String(dict.keys) { $0 as AnyObject as! String }) 
} 

func count() -> Int { 
    return array.count 
} 
} 

謝謝你的代碼!

+3

您應該發佈代碼與您的問題,而不是一個圖片的鏈接 – Amous

+0

對不起,我會編輯它。 –

回答

1

你聲明的變量businessQuotes爲:

// Importing Quotes plist File 
let businessQuotes = ImportList(FileName: "BusinessList") 

但使用businessQuote相反,看看你缺少的 「s」 結尾。拼寫錯誤。以下行應該是:

// Selects Quote 
let chosenQuote: String = businessQuotes.array[randomNumber(businessQuotes 
    .count())] as! String 
let chosenAuthor = businessQuotes.dict[chosenQuote]! as String 
+0

非常感謝。我沒有看到這些,我感到很蠢。 –

相關問題