2010-12-08 5 views
0

Ich habe mehrere benutzerdefinierte uibuttons aus meiner Sicht. Ich möchte eine Umschalttaste erstellen, die beim Drücken durch alle UIB-Tasten durchläuft und ein Hintergrundbild für sie aktiviert.mehrere uibuttons zur Unterklasse

Was ich getan habe, ist ein Bild als Hintergrund zu verwenden, dann erstellte anklickbare Teile davon mit leeren benutzerdefinierten Schaltflächen. Ich möchte diese Umschaltfunktion, um dann die Tasten zu zeigen.

Mein Plan ist es, eine Unterklasse UIButton für die "versteckten" Schaltflächen zu erstellen. Wenn die Umschalttaste gedrückt wird, sollte der Code das Hintergrundbild für jede dieser Tasten auf "reddot.png" setzen. Dies bleibt auf dem Bildschirm, bis die Umschalttaste erneut gedrückt wird - dies deaktiviert dann jedes untergeordnete uibuttons-Hintergrundbild.

Was ist der beste Weg, dies zu tun?

Antwort

2

Ich würde Ihnen raten, UIButton aus zwei Gründen nicht abzuleiten. Erstens, UIButton ist eigentlich ein Klassen-Cluster, was das Unterklassifizieren ziemlich schwierig macht. Zweitens glaube ich nicht, dass es in Ihrem Fall benötigt wird.

Erstellen Sie einfach alle Schaltflächen als benutzerdefinierte Schaltflächen. Sie können ihr Aussehen mit Methoden wie [button setHidden:] und [button setBackgroundImage:forState:] anpassen. Die Umschalttaste könnte dann einfach mit einer IBAction verknüpft werden, die die entsprechenden Anpassungen auf die anderen Schaltflächen anwenden würde.