2009-07-22 15 views
0

Ich möchte einen Menüpunkt aus einem Bild mit etwas Text erstellen. Das Bild ist eine Schaltfläche und ich muss den Namen des Players auf die Schaltfläche schreiben, also nehme ich an, dass ich sowohl MenuItemImage als auch MenuItemFont verwenden muss.Wie erstelle ich ein MenuItemImage mit etwas Text darauf?

Vielleicht kann ich einen AtlasSprite mit Bild und Text darauf und dann uns MenuItemAtlasSprite Objekt erstellen? Wenn ja, wie kann ich dieses zusammengesetzte Bild erstellen?

Was ist der empfohlene Weg, um diese Funktionalität zu erreichen?

Dank Krügen

+0

Von welcher Klasse sprichst du? Alles, was ich finden kann, ist NSMenuItem, was veraltet zu sein scheint. – Amagrammer

Antwort

0

irgendeinem Grund nicht nur UIButton verwenden kann? Ich benutze Cocos2D, erkannte aber, dass das einfache alte UIButton für meine Bedürfnisse gut genug war.

Hier ist, wie ich den Knopf meiner Cocos2D Schicht hinzugefügt:

UIView *myView = [[Director sharedDirector] openGLView]; 

    UIButton *menuButton = [UIButton buttonWithType: UIButtonTypeRoundedRect]; 
    [menuButton setTitle: @"Menu" forState: UIControlStateNormal]; 
    menuButton.frame = CGRectMake(BUTTON_X(0), BOTTOM_BUTTON_ROW_Y, BUTTON_WIDTH, BUTTON_HEIGHT); 
    [menuButton addTarget: self action: @selector(menuButtonClicked:) forControlEvents: UIControlEventTouchUpInside]; 
    [myView addSubview: menuButton]; 
    [myView bringSubviewToFront: menuButton]; 
0

Sie fügen direkt an die UIView und nicht auf die Ebene. Ich benutze mehrere Ebenen in einer Szene und wechsle sie um, so dass dies für mich nicht funktioniert, wenn ich die Schaltflächen nicht basierend auf der sichtbaren Ebene ausgeblendet habe.

Ich landete schließlich ein Label auf dem MenuItemImage. Ich dachte an das Unterklassieren von MenuItemImage, aber Cocos2d hat einen Fehler, bei dem es nicht alle Subviews zeichnet.

Prost

Krügen

0

Ich würde eine CCMenuItem nur erstellen und eine CCSprite und CCLabelTTF, um es hinzuzufügen.

Verwandte Themen