つまり、いつでも参照できるグローバル文字列変数を定義したいということです。私がそれを参照する関数は、文字列を返します。それを保存して別の関数で参照するとすぐに、次のように出力されます<CGPath 0x5bbf50>
一体何?コードは以下のとおりです。これは Titanium 用のモジュールであることに注意してください。まず、グローバル変数の定義..
@interface ComTestModule : TiModule <CBCentralManagerDelegate, CBPeripheralDelegate>
{
NSString * teststring;
}
次の部分は、最初に文字列変数をチタンから xcode に送信する関数です。
-(void)setService:(id)args{
ENSURE_ARG_COUNT(args, 2);
teststring = [args objectAtIndex:0];
NSLog(teststring);
}
NSLog の出力には、渡された実際の文字列が表示されます。ここで、文字列を再度呼び出してログに出力しようとする最後の関数..
- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error
{
NSLog(@"---%@", teststring);
}
前に言ったように、このステップでは次のように出力されます---<CGPath 0x3ef4e0>
何が起こっているのか本当にわかりません..これをCGPathの代わりに元の文字列として返すことについての助けは素晴らしいでしょう!