Ich habe eine UISegmentedControl mit zwei Segmenten (Index: 0 und 1), die ich programmgesteuert auf 0 zurücksetzen möchte. Wenn ich den folgenden Befehl ausführen, wird der Segmentindex nicht auf 0 zurückgesetzt erwartet. Stattdessen hebt es Segment 1. indiziert SeltsamerÄndern Sie UISegmentiertControl ausgewählten Index oder Wert programmgesteuert
[seg setSelectedSegmentIndex:0];
, wenn ich das ausgewählte Segment einzuloggen, es gibt 0
.
NSLog(@"seg setSelectedSegmentIndex %d", seg.selectedSegmentIndex);
Auch seltsam, nachdem setSelectedSegmentIndex:0
lief ich nicht Segment 0 manuell durch Berührung erneut auswählen kann, so scheint es Segment 1, gesperrt zu werden, bis ich 1 tippen, wobei es als normal funktioniert. Hier
ist die Einrichtung für die Schaltfläche:
itemArray = [NSMutableArray arrayWithObjects: @"Zero", @"One", nil];
seg = [[UISegmentedControl alloc] initWithItems:itemArray];
[seg setFrame:segRect];
seg.segmentedControlStyle = UISegmentedControlStyleBar;
seg.momentary = NO;
[seg addTarget:self action:@selector(someAction:) forControlEvents: UIControlEventValueChanged];
[mainView addSubview:seg];
HINWEIS: neu zu formulieren, was ich mit dieser Frage zu erreichen versuchte: Ich habe eine UISegmentedControl des ausgewählten Index über eine Variable dynamisch einstellen möchten, erhalten die angemessenes visuelles Feedback und überprüfen Sie den ausgewählten Index in einer Methode, um etwas abhängig von dem ausgewählten Index geschehen. Siehe meine Antwort unten für eine Lösung.
sind beide Segmente aktiviert, bevor Sie versuchen, zu wählen? (mit isEnabledForSegmentAtIndex) –
@calvinBhai Ich denke ja, wäre die Standardeinstellung nicht aktiviert? – Mrwolfy
Ich habe das gleiche Problem, Segment 0 kann nicht erneut ausgewählt werden, sobald einer der anderen gewesen ist. Ich werde jetzt mit einem Workaround von einem leeren Seg 0 freigeben. Mein Segment befindet sich in einem UIControl in einem UIScrollView. Ich hatte das Problem zuvor, als iOS 5 funktionierte, aber die gleiche Binärdatei auf iOS6 zeigte dieses Problem. –