viewController.mでac関数を実行しました。
int abc(int a, char* b)
{
//do something
}
私も機能があります
-(void) callIncomingClass
{
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
//set the position of the button
button.frame = CGRectMake(100, 170, 100, 30);
//set the button's title
[button setTitle:@"Click Me!" forState:UIControlStateNormal];
//add the button to the view
[self.view addSubview:button];
}
callIncomingClass
ここで、関数abc内から呼び出したいと思います。
どのように私がそれについて行くことを提案しますか?
C関数からObjectiveCメソッドを呼び出したいのは、C関数でボタンを作成したり、そのような処理を実行したりできないためです。
次のコードが機能する必要があります:
int abc(int a, char* b)
{
ViewController * tempObj = [[ViewController alloc] init];
[tempObj callIncomingClass];
}
編集:私がしていることの全体像acライブラリ、つまりlibrary.cファイルとlibrary.hファイルがあります。library.hファイルには、コールバック関数を持つ構造体があります。これらは関数ポインタで割り当てる必要があります。そのため、構造体のコールバック関数に割り当てられるシグネチャint abc(int、char *)を使用してac関数を実行しました。
この関数abcはViewController.mで定義されています。理想的には、別のファイルで定義したかったのです。でもこれもオーキーです。
コールバックイベントが発生したので、ビューでアクションを実行するUIButtonを作成します。ac関数からUIButtonを作成できないため、UIButtonを作成するViewControllerクラスのObjectiveCメソッドを呼び出しています。
これで、これをどのように使用する予定であるかが明確になることを願っています。