Frage

Ich habe ein Fügen Sie herausgefunden, wie Sie ein UisegmentedControl -Element zum Taste der Navigationsleiste hinzufügen (rechte Balken -Taste). Es funktioniert im Simulator gut, aber wenn ich es auf dem Gerät versuche, wird nur das erste Element in der segmentierten Steuerung angezeigt. Es nimmt die volle Länge ein (dh es gibt nur ein Segment über das Ganze).

- (void) setupSegmentedControl {
//set up the segmented control and add it to the nav bar rightBartButtonItem
UISegmentedControl * segmentControl = [[UISegmentedControl alloc] initWithItems:[NSArray         arrayWithObjects:[UIImage imageNamed:@"Settings.png"],[UIImage imageNamed:@"Map-Icon.png"],[UIImage imageNamed:@"Search.png"], nil]];
UIBarButtonItem * segmentControlButton = [[UIBarButtonItem alloc] initWithCustomView:segmentControl];
[segmentControl setBackgroundColor:[UIColor clearColor]];
segmentControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentControl.frame = CGRectMake(0, 0, 75, 30);
[segmentControl setMomentary:YES];
[segmentControl addTarget:self
                   action:@selector(segmentedControlAction:)
         forControlEvents:UIControlEventValueChanged];
self.navigationItem.rightBarButtonItem = segmentControlButton;
[segmentControl release];

}

Irgendwelche Ideen, was schief geht?

War es hilfreich?

Lösung

Stellen Sie sicher, dass die Bilddateinamen genau mit den Ressourcennamen in Ihrem Projekt einschließlich Groß-/Kleinbuchstaben übereinstimmen.

Das Gerät ist fälschlichempfindlich und wenn der Name nicht übereinstimmt, übereinstimmt, imageNamed: wird zurückkehren nil Beenden des Arrays.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top