2015-11-26 5 views
-1

Variable 'sendTitle' cannot accessПередача данных из Tableview клетки View Controller Swift 2,1

Кто знает, почему я не могу получить доступ к переменной «sendTitle» в prepareForSegue от didSelectRowAtIndexPath? Я видел некоторые из уроков, они делают то же самое со мной, я понятия не имею, почему моя ошибка. - Что я сейчас делаю, это передать значение из ячейки tableView в другой контроллер представления.

Я использую Xcode 7 Swift 2.1

+0

вы должны объявить sendTitle в своем классе, чтобы сделать его видимым для всех методов – PK20

+0

потому что это локальные константы – Leo

+0

@ PK20 Нет, я назначить cell.lblTitle.text в sendTitle, как я мог сделать это в моем классе? – jefferyleo

ответ

0

Вы должны объявить sendTitle внутри своего класса, чтобы сделать его видимым для всех методов. Что-то вроде следующего.

import UIKit 

class viewController: UITableViewController { 
    var sendTitle:String = "" 

    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    //table view delegate methods 
    // just use sendTitle = cell.lblTitle.text! 

} 
+0

Я сделал это так, спасибо. Я думаю, что сейчас я запутываюсь между командой prepareForSegue и didSelectRowAtIndexPath. Цените. Я помету ваш ответ как можно скорее через несколько минут из-за ограничения StackOverFlow – jefferyleo

0

Потому что он объявлен в частном порядке в вашем методе didSelectRowAtIndexPath. Он не будет доступен вне этой функции. если вы хотите получить к нему доступ из другой функции, объявите ее как глобальную переменную в вашем контроллере представления.

Смежные вопросы