• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Xcodeのクラスについてお聞きします。)

Xcodeのクラスについての質問

このQ&Aのポイント
  • Xcodeのクラスについてお聞きします。何らかのクラスをつくり、ViewControllerからクラスを生成してそのクラス(以下TestClass)のメソッドにアクセスします。TestClassのメソッドから呼び出し元のViewControllerの変数若しくはメソッドにアクセスすることはできるのでしょうか?
  • Xcodeでクラスを使ってViewControllerから別のクラスのメソッドにアクセスする方法や、呼び出し元の変数やメソッドにアクセスする方法について教えてください。
  • Xcodeのクラスで、TestClassというクラスを作成し、そのメソッドから呼び出し元のViewControllerの変数やメソッドにアクセスすることは可能ですか?どのような方法があるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#177743
noname#177743
回答No.1

よくわからないのですが、lavelWriteメソッドでUILabelを引数に渡せばいいだけと思うんですが、それじゃまずいんですか?

nyatama
質問者

お礼

すみません。自己解決しました。 ViewControllerからTestClassに@property id型のselfで渡して そのid型からViewControllerを生成するとViewController変数にアクセスできました。 ありがとうございました。

nyatama
質問者

補足

TestClassのlabelWriteクラスからViewControlerの@propaty化したUIlabelに書き込むといったことをしたいのですがこれは出来ないのでしょうか? ViewControllerをインポートしてアクセスしてみましたがvc.labelの値を読めませんでした。 @interface ViewController : UIViewController{ UIlabel *label; //TestClassから書き込みたい } @property UIlabel *label; @end @implementation ViewController @synthsize label; -(void)viewDidLoad{ TestClass *class = [[TestClass alloc] init]; [class labelWrite];//クラス呼び出し } - (void)hoge{ //TestClassからここにアクセスしたい //処理 } @end #import "ViewController.h" @interface TestClass : NSObject @end @implementation TestClass - (void)labelWrite{ //ここからViewControllerのlabelに書き込みたい //もしくはViewControllerのhogeメソッドにアクセスしたい ViewController *vc = [[ViewController alloc] init]; //ここでvc.labelを読み書きすることはできませんか? } @end

関連するQ&A