UISlider値のvalueプロパティをバイナリ形式に変更したいと思います。
私がしたことに関して:
-(IBAction)setValue:(id)sender
{
int value =(int)([sliderValue value] *200);
NSLog(@"slider value int %i", value);
NSLog(@"hex 0x%02X",(unsigned int)value);
NSMutableArray *xx;
[xx addObject:[NSNumber numberWithInt:value]];
NSLog(@"%@",xx);
NSInteger theNumber = [[xx objectAtIndex:value]intValue];
NSLog(@"%@",theNumber);
NSMutableString *str = [NSMutableString string];
NSInteger numberCopy = theNumber; // so won't change original value
for(NSInteger i = 0; i < 8 ; i++) {
// Prepend "0" or "1", depending on the bit
[str insertString:((numberCopy & 1) ? @"1" : @"0") atIndex:0];
numberCopy >>= 1;
}
NSLog(@"Binary version: %@", str);
}
ただし、問題があります。スライダーの値が変更されるたびに、整数と16進数に変換されますが、2進数には変換されません。誰かが私が間違いを犯した場所を見つけるのを手伝ってくれますか?