UIView Popup wie UIAlertView

8

Ich möchte eine UIView, die wie UIAlertView auftauchen und auch verschieben kann.

Irgendwelche Hilfe bitte ??

Danke.

    
iUser 06.08.2011, 09:01
quelle

2 Antworten

24

Animieren Sie die Transformation der Ansicht mithilfe der UIView-Animation ( Blöcke verwenden oder ältere API )

von einigen sehr kleinen (wie view.transform = CGAffineTransformMakeScale(0.1, 0.1) ) zu etwas ein wenig größer als Sie wollen (wie view.transform = CGAffineTransformMakeScale(1.1, 1.1)) , dann zurück auf die gewünschte Größe (view.transform = CGAffineTransformMakeScale(0.1, 0.1)) , oder fügen Sie weitere Schritte für größere Bounce.

Und um es zu verschieben, implementieren Sie die Touch-Methoden und ändern Sie den Rahmen der Ansicht, während sich der Finger bewegt.

Bearbeiten: Hier ist der Beispielcode für benutzerdefinierte UIAlertView-ähnliche UIView.

MyAlertView.h:

%Vor%

MyAlertView.m:

%Vor%

Wo Sie diese Warnung anzeigen möchten, benötigen Sie:

%Vor%

und:

%Vor%

Dann zeigen Sie es mit [alert show]; , verstecken Sie mit [alert hide]; oder wechseln Sie mit [alert toggle];

Sie können es auch verschieben, wenn Sie tippen und ziehen (an beliebiger Stelle außer auf der Schaltfläche zum Schließen). Ich hoffe, das ist genug, um Sie zu beginnen. Wenn Sie eine Erklärung für einen Teil des Codes benötigen, fragen Sie einfach.

Oh, und beachte, dass ich die Farbe dieser Ansicht auf weiß setze. Wenn du sie also über einer anderen weißen Ansicht zeigst, wirst du sie nicht wirklich sehen, also ändere einfach die Hintergrundfarbe jeder Ansicht:)

    
Filip Radelic 06.08.2011, 09:08
quelle
0

Sie können das einfach durch Befolgen der folgenden Schritte erwerben

  1. Erstellen Sie UIview (ViewA) der Größe 320 * 480, so dass es den gesamten Bildschirm des iPhones mit dem auf clearColor eingestellten Hintergrund abdeckt. Dies dient als Super View für unseren Zweck;
  2. Erstellen Sie eine weitere UIView (ViewB) der Größe 320 * 480, wobei die Hintergrundfarbe auf Schwarz und die Deckkraft auf 40% eingestellt ist. 3. Jetzt können Sie eine beliebige Ansicht auf ViewB hinzufügen.
  3. Fügen Sie nun ViewB ViewA hinzu.

Schließlich können Sie diese Ansicht wo immer erforderlich präsentieren. Der Effekt wird sein, ViewA deckt den Background ViewController ab, ViewB wird Server als Unterdrückungseffekt für den Background View Controller und Views auf B sind das UIElement, das Sie sehen werden.

Für den Animationseffekt können Sie einen einfachen Animationscode für das UIElement auf ViewB verwenden.

    
Black Tiger 14.08.2012 13:23
quelle