2011-01-16 5 views
3

Ich versuche herauszufinden, das beste Design für eine benutzerdefinierte schwebende "Palette" für die Einleitung von Aktionen (zB Sortierkriterien einer Liste ändern) sowie wechselnde Ansichten (zB Hilfe, Optionen). Ich möchte, dass die Palette kollabiert beginnt, sodass die ursprüngliche Ansicht im Vollbildmodus angezeigt wird. Wenn der Benutzer die Ecke des Bildschirms berührt, rutscht die Ansicht mit Animation in Position. Eine weitere Berührung schiebt den Blick aus dem Weg.Wie machen sie das? ... vermeiden eine langweilige, standard Ausstechform iPhone App

Das beste Beispiel für die Benutzeroberfläche, die ich anstrebe, ist eine meiner Lieblings-Apps, die iThoughts Mind Mapper (siehe unten). Wie wird das gemacht? Ich möchte wirklich lernen, wie die Profis so schöne Apps erstellen. Die meiste Hilfe, die ich finde, weist mich in Richtung der Standard-UITabbar, UIToolbar, etc. Gähn.

Danke!

alt textalt text

+0

Ich bewundere Ihren Ehrgeiz. –

Antwort

1

Annahmen:

  • Sie wollen einen Blick toolbar genannt animieren.
  • Sie haben die Rahmenkoordinaten für die Ansicht der Symbolleiste für ihren Offscreen-Zustand in einer CGRect toolbarFrameWhenHidden-Eigenschaft gespeichert. Entsprechend enthält CGRect toolbarFrameWhenShown die Rahmenkoordinaten für den angezeigten Zustand. Sie haben eine BOOL toolbarHidden-Eigenschaft, die den aktuellen Status der Symbolleiste angibt.
  • Sie haben das Steuerelement verbunden, auf das der Benutzer tippen sollte, um die Symbolleiste der toggleToolbar: Aktion anzuzeigen/auszublenden.

Der Code:

- (IBAction) toggleToolbar:(id)sender 
{ 
    CGRect targetFrame = self.toolbarHidden ? self.toolbarFrameWhenShown : self.toolbarFrameWhenHidden; 
    [UIView animateWithDuration:0.25 animations:^{ 
     self.toolbar.frame = targetFrame; 
    }]; 
    self.toolbarHidden = !self.toolbarHidden; 
} 
4

Sie sollten lernen, wie man es tun, um die herkömmliche Art und Weise beginnen. Lass die App zuerst funktionieren. Dann erweitern Sie es. Wenn Sie die herkömmliche Methode vollständig beherrschen, lernen Sie Core Animation und die Verwendung von Ebenen.

+0

Ich hätte es erwähnen sollen ... Meine App funktioniert bereits auf konventionelle Art. Ich habe es sowohl mit IB als auch direkt im Code gemacht. Ich suche nach Tipps und Techniken, um ein stilisierteres kundenspezifisches GUI zu erzielen, während ich ein gutes Entwurfsmuster verwende. – Bama91