2017-10-05 86 views
0
var pickerData: [[String]] = [String] 
override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view. 

    // Connect data: 
    self.gothramPicker.delegate = self 
    self.gothramPicker.dataSource = self 
    pickerData = [ 
      [["A"],["i","ii","iii"]], 
      [["B"],["iv","v","vi","vii"]] 
    ]" 

獲取上下文類型'String'的錯誤不能與數組文字一起使用。我的選取器有兩個部分,如果在第一個選取器中選擇了每個項目都有自己的細分部分以從第二個選取器中進行選擇。Swift picker array error

我想在Array中使用Array,並且每個主陣列都有不同列表的子陣列。當我在選擇器中選擇第一個數組時,它應該只顯示特定數組項的子項。當我添加雙括號時,我收到錯誤。也請讓我知道任何錯誤的代碼

+1

您可能想標記語言,以便正確的人可以找到此問題 – RSon1234

+0

任何人都可以支持? – Sureshtrb

+0

等待幫助 – Sureshtrb

回答

0

@sureshtrb,我不張貼答案,因爲你沒有問這裏的問題。坦率地說,你只是在語法理解方面感到困擾。 您正在聲明包含string [[String]]數組的Array([])類型的picketData,並且通過將[「A」]替換爲字符串,您將添加一個數組[[A]]來代替String 「一個」。

根據你真正的問題,我建議你去2 diff數組或使用字典。

下面的代碼編譯。

var pickerData: [[String]] = [[String]]() 
    override func viewDidLoad() { 
    super.viewDidLoad() 

    pickerData = [ 
        ["A","i","ii","iii"], 
        ["B","iv","v","vi","vii"] 
       ] 
    } 
+0

根據您的建議,選取器將顯示每個第一個數組項的所有第二個數組列表。我的要求是第一個數組項目將有一些特定的項目列表中選擇,第二個可能有其他列表。希望我的要求很明確 – Sureshtrb