ページ 1 / 1
objective-c 別クラスのメソッドをコールする方法
Posted: 2012年2月07日(火) 00:36
by べっきー
objective-c初心者です。
AppDelegateプロトコルのメソッドから、MainViewControllerプロトコルの
メソッドAをコールにするにはどうのようにコーディングすればいいでしょうか?
ググって調べて以下のコーディングを行ったのですが、Aのメソッドのコールすらされませんでした。
よきアドバイスお願いいたします・・・。
AppDelegate.h
@class MainViewController;
@interface AppDelegate : NSObject <UIApplicationDelegate>
{
:
MainViewController *mainViewController;
}
AppDelegate.c
[mainViewController A];
MainViewController.c
- (void) A{
:
}
Re: objective-c 別クラスのメソッドをコールする方法
Posted: 2012年2月07日(火) 00:45
by h2so5
不完全なコードではなく、ちゃんとした全体のコードを載せてください。
特に、[mainViewController A]; がどこに書かれているのか不明です。
Re: objective-c 別クラスのメソッドをコールする方法
Posted: 2012年2月07日(火) 01:08
by べっきー
巨大なソースで全部のせきれないのですが要点を抜粋してソース記載しなおしました。
よろしくお願いいたします。
★AppDelegate.h
@class MainViewController;
@interface AppDelegate : NSObject <UIApplicationDelegate>
{
:
MainViewController *mainViewController;
}
@property (nonatomic, retain) MainViewController *mainViewController;
★AppDelegate.c
@implementation AppDelegate
@synthesize mainViewController;
//非同期通信データ受信
- (void)statusesReceived:(NSArray *)statuses forRequest:(NSString *)connectionIdentifier{
:
:
[mainViewController A];
}
@end
★MainViewController.c
@implementation MainViewController
:
- (void) A{
:
}
@end
Re: objective-c 別クラスのメソッドをコールする方法
Posted: 2012年2月07日(火) 08:40
by べっきー
余分な宣言を削除し、やっと以下でメソッドAを呼ぶ事ができたのですが、メソッドAで実施しているテーブル更新が
うまく動作しません。たびたびの質問で申し訳ないのですが何が悪いのでしょうか?
★AppDelegate.c
@implementation AppDelegate
//非同期通信データ受信
- (void)statusesReceived:(NSArray *)statuses forRequest:(NSString *)connectionIdentifier{
:
:
id test = [[MainViewController alloc] init];
[test A];★Aメソッドを呼んでいる
}
@end
★MainViewController.c
@implementation MainViewController
:
- (void) A{
[TableView reloadData];★呼ばれているがテーブルが更新されていない
}
@end