我有一個名爲TableViewController的視圖控制器和另一個名爲feed.swift的自定義單元格單元格被正確地重用,因爲我不想知道什麼按鈕被按下。 在我cellForRowAtIndexPath我填充我的用戶名與我分析過的JSON。它看起來像這樣Swift:如何從一個UIViewController訪問一個可變的字符串數組到一個TableView單元格文件
cell.username.text = username[indexPath.row]
output-> ["andre gomes", "renato sanchez", "renato sanchez"]
然後我已標記了用戶名按鈕,這樣
cell.usernamePress.tag = indexPath.row
在我feed.swift我檢查,如果一個按鈕這是怎麼回事,我TableViewController按下並打印出分配給該按鈕的標籤
@IBAction func usernameBut(sender: AnyObject) {
print(usernamePress.tag)
}
output-> 2
現在我需要訪問feed.swift中的TableViewController的用戶名數組,並做一些像用戶名[usernamePress.tag]
我試圖做一個global.swift文件,但我不能配置它的字符串數組。
import Foundation
class Main {
var name:String
init(name:String) {
self.name = name
}
}
var mainInstance = Main(name: "hello")
即使這樣做後,我試着打印mainInstance.name,即使改變它也返回hello。我想要一個解決方案,其中字符串數組保存我在TableViewController中設置的值,並且我可以在feed.swift中使用它們。 歡迎任何建議!我很抱歉,如果有這方面的任何類似的問題,但我無法弄清楚如何使用它的字符串
在聲明委託的時候用到了UsernameButton動作,我得到了1.在調用和2中使用了無關的參數標籤didPressUsernameButtonInCell。代碼看起來像這個委託?.feedCell(self),但是當我點擊它時,它給了我它沒有 –
對不起,我沒有編譯代碼,並在那裏犯了兩個錯誤。我更新了答案,它現在應該工作。 –
謝謝你尼克指出我在協議和代表的方向。他們肯定是要走的路:) –