3

面倒な小さな問題が発生しました。

UISwitch によって設定された値を渡す必要があるため、ブール値であるため、整数を返すと考えていたため、以下のコードの %i です。

私が見たところ、多くの UISwitched の値が次のように表示されています。

if(nameOfSwitch.isOn)
{
  NSLog(@"The switch is on");
}
else
{
  NSLog(@"The switch is off");
}

これが必要なので、ブール値が必要です。

NSString *value = [[NSString alloc] initWithFormat:@"Value of Switch %i" nameOfSwitch.on];

ただし、これは常にオンになっているように見える-では、それを行う正しい方法は何ですか??

UISwitch には UITextField.text に相当するものが必要です

4

1 に答える 1

10

あなたが試すことができます

NSString *value = [[NSString alloc] initWithFormat:@"Value of Switch: %i",nameOfSwitch.isOn];

また

NSString *value = [[NSString alloc] initWithFormat:@"Value of Switch: %@",nameOfSwitch.isOn?@"YES":@"NO"];

ちなみにそうあるべき

if(nameOfSwitch.isOn)
{
  NSLog(@"The switch is on");
}
else
{
  NSLog(@"The switch is off");
}

編集: このスイッチが ON として表示されていて、必要な 1 が得られない場合は、間違ったスイッチ名を呼び出しているか、同じインスタンスではないことが問題である可能性があります (Interface Builder に 1 つある)また、コードで 1 つを初期化します)

于 2013-01-10T01:00:49.800 に答える