2015-07-17 9 views
0

Я нашел похожие вопросы, но ни одно из решений, похоже, не работает. Это моя проблема:Как ссылаться на свойство из точного экземпляра из другого класса?

  • У меня есть класс, GeneralPostAreaController: UIViewController
  • Он имеет свойство «queryObject», который определяется как «ParseQueryer()» (пользовательский класс я создал, чтобы получить объекты данных)
  • по существу «queryObject» хранит данные для создания поста
  • у меня есть еще один класса (который также отдельный файл), PostTableViewCell: UITableViewCell
  • Я хочу, чтобы ссылаться на "queryObject" внутри PostTableViewCell, так что я могу сделать действия с данными внутри "queryObject"

код ниже:

class GeneralPostAreaController: UIViewController { 

    var queryObject = ParseQueryer() 

    ...Other code here 

В другом файле:

class PostTableViewCell: UITableViewCell { 

    //reference the queryObject here 

Спасибо вы! BTW Я также очень новичок в программировании и Swift.

+0

Хотя вы можете accompish это, вы, вероятно, хотите, чтобы переместить 'ParseQueryer' из контроллера зрения, так как он имеет мало что связано с контролем взглядов. Это было бы более уместно в отдельном классе, посвященном получению и хранению данных, к которым вы могли бы получить доступ, например, как singleton, или как свойство в своем делете приложения. –

+0

yep .... в конечном итоге пришлось реорганизовать все! –

ответ

0

Быстрое и грязное решение - это queryObject - статическая переменная.

class GeneralPostAreaController: UIViewController { 
    static var queryObject = ParseQueryer() 
} 

Затем, вы можете получить доступ к queryObject в любом месте вашего приложения, как это:

GeneralPostAreaController.queryObject