1

UIStepper を使用して UITextfield から値を取得し、stepper.value をインクリメントまたはデクリメントすることはできません。この問題を解決してください。私のコード:

 -(void)stprPressd:(id)sender
 {
 float a=[textField.text floatvalue]

 [stepper setMinimumValue:0];
 [stepper setContinues:YES];
 [stepper setWraps:YES];
 [stepper  setStepValue:1]

 textField.text=[NSString stringWithFormat@"%f",stepper.value]
 stepper.value=a;
 stepper setMaximumValue:10];   
}
4

1 に答える 1

0

change イベントでコントロールのプロパティを設定していると思います。コントロールのプロパティを初期化してviewDidLoadメソッドに設定する必要があります。

- (void)viewDidLoad {

[super viewDidLoad];

// Frame defines location, size values are ignored
UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(120, 20, 0, 0)];    

// Set action target and action for a particular value changed event
[stepper addTarget:self action:@selector(stepperPressed:) forControlEvents:UIControlEventValueChanged];

[stepper setMinimumValue:0];
[stepper setMaximumValue:10]; 
[stepper setContinues:YES];
[stepper setWraps:YES];
[stepper  setStepValue:1]
[self.view addSubview:stepper];
[stepper release];
}

そして、あなたのstepperPressed:メソッドは次のようになります

-(void)stepperPressed:(UIStepper *)sender{
 textField.text=[NSString stringWithFormat@"%lf",sender.value]
}
于 2012-10-13T14:45:47.717 に答える