Jetzt sehen Sie durch:Flash

Infografik: HTML5 Einsatz in der Realität (Hype vs. Wirklichkeit)

infographic html5 hypeAuch wenn ich mich von der aktiven Flash-Entwicklung zurückgezogen habe, möchte ich euch nicht diese Infografik vorenthalten. Sie zeigt einige interessante Aspekte im Bezug auf die realistische Nutzung von HTML 5.
Ich weiß, dass viele jetzt aufschreien und sagen: “HTML 5 ist die Zukunft”, “Scheiß Flash! Endlich ist es weg…”, usw. Aber habt ihre euch schon mal überlegt, was sich bis heute durch HTML5 geändert hat? Wusstet ihr, dass es nicht ein einziges Video-Format gibt, was alle Browser unterstützen. Egal ob MP4, Ogg oder WebM… und es gibt noch mehr Beispiele!

 

(mehr …)

AS3: Stringoperation Tausendertrennung / Zifferngruppierung

Ein sehr triviales Problem tritt bei der Darstellung von sehr großen Zahlen auf. Um die Lesbarkeit dieser Zahlen zu erhöhen, sollte man die Ziffern gruppieren. Allgemein spricht man hier von der Tausendertrennung. Diese Funktion erledigt das für euch!

Der Aufruf

// Ergebnis: 1.010
groupNumber(1010);
// Ergebnis 222.111
groupNumber(222111);
// Ergebnis 1.234.567.890
groupNumber(1234567890);

Die Funktion finden Sie nach dem Break!
(mehr …)

Übersicht: Welche Android Smartphones und Geräte unterstützen Adobe Flash / Adobe Air?

In den Medien und auf der Webseite vieler Hardwarehersteller wirbt man mit der Unterstützung von Adobe Flash. Jedoch bedeutet das nicht, dass diese Aussage für ­alle Android Smartphones zutrifft! So besitzen das ­HTC ­Wildfire und das Sony Ericsson ­Xperia Mini ­die Android Version 2.2, können aber nicht den Flashplayer installieren. Grund hierfür sind der geringe Arbeitsspeicher (RAM) und die verbauten Prozessoren, die für die Darstellung von Flash eine zu schwache Leistung liefern. Eine aktuelle Übersicht der zertifizierten Geräte findet man nur auf der englischen Seite von Adobe. Hier ist eine kompakte Zusammenfassung (Stand 30.05.2011):
(mehr …)

AS3: MovieClips zufällig abspielen lassen

In Vorschau-Fenstern oder MP3-Playern sieht/hört man zufällig abgespielte MovieClips. Dieses Howto erklärt euch, wie ihr eine zufällige Wiedergabe in Actionscript 3 realisiert. Dabei werden verschiedene Varianten erklärt mit unterschiedlichen Ansätzen. Folgende MovieClip-Klassen(mit Animation) sind vorhanden:

  • blau_mc
  • rot_mc
  • gelb_mc
  • gruen_mc

(mehr …)

AS3: Dynamisch-beschrifteter Button mit einem Link auf eine andere Webseite/URL-Adresse

Die meisten Anfänger scheitern schon bei den einfachsten Anforderungen. Dazu gehört beispielsweise ein einfacher Button, der dynamisch zur Laufzeit beschriftet wird und eine externe Webseite/URL-Adresse öffnet. Verwendet wird diese Art von Buttons in Navigationen für Webseiten oder in CMS Systemen. Das folgende Skript macht aus einer beliebigen Instanz mit dem Namen “meinFeld” einen Button. Dieses muss in die Zeitleiste des Films eingefügt werden:

import flash.events.MouseEvent;

//Eventlistner hinzufügen
meinFeld.addEventListener(MouseEvent.CLICK, click);

// Clickevent verarbeiten
function click(e:MouseEvent):void
{
	 // Hier passiert was, z.B.
	 trace("Klick erfolgreich!");
}

(mehr …)

AS3: Formatierung eines TextFields ändern in Actionscript 3

Ab und zu nutze ich die Komponenten aus Flash. Da kann es schon mal vorkommen, dass ich die Formatierung innerhalb eines dynamisch erzeugten TextFields ändern muss. Mit der Klasse “TextFormat” geht das ganz einfach:

package
{
     import flash.display.Sprite;
     import flash.events.Event;
     import flash.text.TextField;
     import flash.text.TextFormat;
     import flash.text.TextFormatAlign;
     
     /**
      * ...
      * @author Alexander Gr. - AxxG Blog
      */
     public class Main extends Sprite
     {
        public function Main():void
        {
           if (stage) init();
           else addEventListener(Event.ADDED_TO_STAGE, init);
        }
        
        private function init(e:Event = null):void
        {
           removeEventListener(Event.ADDED_TO_STAGE, init);
 
           var mytext:TextField = new TextField();
           mytext.text = "AxxG Blog";
 
           var mytext2:TextField = new TextField();
           mytext2.text = "Hallo Welt";
           
           var newFormat:TextFormat = new TextFormat();
           newFormat.align = TextFormatAlign.CENTER;
           newFormat.bold = true;
           // weitere Eigenschaften definieren

           text.setTextFormat(newFormat);
           // Erklaerung
           // mytext.setTextFormat(textFormat:TextFormat)	Wendet die Eigenschaften von textFormat auf den gesamten Text im Textfeld an.
           // mytext.setTextFormat(textFormat:TextFormat, beginIndex:int)	Wendet die Eigenschaften von textFormat auf den Text an, der an der Position beginIndex beginnt.
           // mytext.setTextFormat(textFormat:TextFormat, beginIndex:int, endIndex:int)	Wendet die Eigenschaften von textFormat auf den Textbereich zwischen beginIndex und endIndex - 1 an.

 
           this.addChild(mytext);
           this.addChild(mytext2);
        }
     }   
}

(mehr …)

AS3: Eine Funktion für mehrere EventListener verwenden (Button-Navigation)

Die HomepageEiner der Vorteile von Actionscript 3 ist das flexibel einsetzbare Eventsystem. Jedoch benutzt man selten die Funktionen des Event-Objektes! So lassen sich mehrere EventListener mit einer einzigen Funktion verarbeiten. Ausgangspunkt meines Beitrages ist eine kleine Homepage mit 3 Buttons und den Seiten: News, “Über mich” und Impressum.

 

(mehr …)

AS3: For-Each-Schleife für unterschiedliche Items in einem Array

Um alle Items eines Arrays, Vektors oder Objektes zu durchlaufen, verwendet man normalerweise eine For-Each-Schleife wie diese:

var myArray:Array = ["AxxG", "rockt", "total", "!!!"];
for each (var item:String in myArray)
{
	trace(item);
	// Ausgabe: AxxG rockt total !!!
}

var myNumArray:Array = [1, 2, 3, 4, 5, 6, 7];
for each (var item:uint in myNumArray)
{
	trace(item);
	// Ausgabe 1 2 3 4 5 6 7
}

Was passiert, wenn man unterschiedliche Datentypen in einem Array verwendet? Genau, eine Exception wird geworfen. Nicht sehr schön für den Programmierer, aber hier kommt die Lösung:

var myArray:Array = [111, "AxxG", "rockt", "mindestens", 1000000000000, "Mal", "!!!", 111];
for each (var item:* in myArray)
{
	if (item is String)
	{
		trace("Das Item ist ein String mit dem Wert: " + item);
	}
	else if (item is Number)
	{
		trace("Das Item ist ein Number mit dem Wert: " + item);
	}
}

/* Ausgabe 
 * Das Item ist ein Number mit dem Wert: 111
 * Das Item ist ein String mit dem Wert: AxxG
 * Das Item ist ein String mit dem Wert: rockt
 * ...
*/

AS3: Einfacher Schutz und Lokalisierung von SWF-Dateien mit LoaderInfo

Dieser kleine Codeschnipsel überprüft den Pfad / die URL zu eurer SWF-Datei. Sollte dieser nicht mit euren Vorgaben übereinstimmen, wird automatisch auf eine andere Html-Seite umgeleitet. Eine andere Anwendung ist eine URL-abhängige Lokalisierung.
(mehr …)

AS3: Eigenschaften aus einer externen Properties-Datei auslesen

EigenschaftenBei der Programmierung von dynamische Anwendungen ist es immer sinnvoll, änderbare Texte und Variablen in externen Dateien auszulagern. Auf diese Weise kann man dynamische Anwendungen erstellen, ohne die ActionScript-Dateien zu bearbeiten oder neu kompilieren zu müssen. Weiter geht es nach dem Break…

(mehr …)

« Ältere Einträge