Ich habe dieses Problem auf dem Gerät, dass die Zuweisung der ausgewählten Zeile Wert Picker zu viel Zeit dauert auf dem Etikett angezeigt werden, während im Simulator funktioniert es gut.Zuweisen von UIPickerView-Wert Problem auf Gerät
Unten finden Sie den Code ein:
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component
{
if (pickerView == rewardsName) {
NSString *selectedReward = [self.rewards objectAtIndex:row];
if ([reward1.text length]==0){
//set label 1
reward1.text = selectedReward;
}
if ([reward2.text length]==0){
//set label 2
reward2.text = selectedReward;
}
if([reward3.text length]==0){
//set label 3.
reward3.text = selectedReward;
}
}
else if(pickerView == selectNamazPicker){
aNumberString = [self.namazArray objectAtIndex:row];
NSLog(@"aNumberString:: %@", aNumberString);
}
}
Kann mir jemand sagen, was das Problem sein kann ... Ich bin nicht in der Lage ein ...
**
EDITED:
ISSUE RESOLVED:
zu finden **
For others who would face this issue.
I don't know whether it was creating the problem or not. But I did make these changes to my code.
In my .h file, previously I was just defining properties of UILabels (reward1, reward2 etc) with IBOutlet and not ivars. But then I defined ivars as IBOutlet UILabel reward1; etc and eliminated IBOutlet from properties then it started working fine.
Now the problem has resolved.
was ist 'rewardsName'? Beachten Sie, dass Sie die Adressen von zwei Objekten vergleichen: 'if (pickerView == rewardsName)' ... – giorashc
Tatsächlich verwende ich zwei PickerView in der Einzelansicht. rewardsName ist ein UIPickerview –
Wenn 'reward1',' reward2' und 'reward3' von der Klasse' UILabel' sind, sollte das Lesen und Ändern ihres Textes wenig bewirken. Können Sie Folgendes versuchen: (1) den gesamten Block auskommentieren, um zu bestätigen, dass das Problem verschwindet, und (2) den UILabel-Text an einem anderen Punkt in Ihrem Code ändern, um zu bestätigen, dass das Problem dort auftritt? – Dondragmer