Paket | Üst Düzey |
Sınıf | public final class Namespace |
Miras Alma | Namespace Object |
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
- XML nesnelerinin ad alanları Ad alanları, ad alanını tanımlayan bir Tekdüzen Kaynak Tanımlayıcı (URI) ile bir ad alanı önekini ilişkilendirir. Önek, bir XML nesnesi içindeki ad alanına başvuru için kullanılan dizedir. Önek tanımlanmadıysa, XML bir dizeye dönüştürülürken otomatik olarak bir önek oluşturulur.
- Yöntemleri birbirinden ayıran ad alanları Ad alanları, adları aynı olan ancak farklı görevler gerçekleştiren yöntemleri birbirinden ayırabilir. İki yöntemin adları aynı, ancak ad alanları farklıysa, bunlar farklı görevler gerçekleştirebilir.
- Erişim denetimi için ad alanları Ad alanları bir sınıftaki özelliklerden ve yöntemlerden oluşan bir gruba erişimi denetlemek için kullanılabilir. Özellikleri ve yöntemleri özel bir ad alanına yerleştirirseniz, o ad alanına erişimi olmayan hiçbir kod bunlara erişemez. Ad alanını diğer sınıflara, yöntemlere veya işlevlere ileterek özellik ve yöntem grubuna erişim izni verebilirsiniz.
Her iki yapıcı formu farklı parametreler kabul ettiğinden, bu sınıf yapıcı yöntemi için iki farklı form gösterir.
Bu sınıf (aynı zamanda XML, XMLList ve QName sınıfları da) XML belirtimi için ECMAScript (E4X) öğesinde (ECMA-357 sürüm 2) tanımlanan güçlü XML işleme standartlarını uygular.
Daha fazla bilgi
İlgili API Öğeleri
Özellik | Tanımlayan: | ||
---|---|---|---|
constructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru. | Object | ||
prefix : String
Ad alanının öneki. | Namespace | ||
uri : String
Alan adının Tekdüzen Kaynak Tanımlayıcısı (URI). | Namespace |
Yöntem | Tanımlayan: | ||
---|---|---|---|
prefixValue ve uriValue parametrelerinin değerlerine göre bir Namespace nesnesi oluşturur. | Namespace | ||
Bir Namespace nesnesi oluşturur. | Namespace | ||
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir. | Object | ||
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir. | Object | ||
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir. | Object | ||
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar. | Object | ||
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür. | Object | ||
Namespace.uri özelliğine eşdeğerdir. | Namespace | ||
Belirtilen nesnenin URI değerini döndürür. | Namespace |
prefix | özellik |
uri | özellik |
Namespace | () | Yapıcı |
public function Namespace(prefixValue:*, uriValue:*)
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
prefixValue
ve uriValue
parametrelerinin değerlerine göre bir Namespace nesnesi oluşturur. Bu yapıcı her iki parametreyi de gerektirir.
prefixValue
parametresinin değeri prefix
özelliğine şu şekilde atanır:
undefined
iletilirse,prefix
değeriundefined
olarak ayarlanır.- Değer,
isXMLName()
işleviyle belirlenen geçerli bir XML adıysa, bu bir dizeye dönüştürülür veprefix
özelliğine atanır. - Değer geçerli bir XML adı değilse,
prefix
özelliğiundefined
olarak ayarlanır.
uriValue
parametresinin değeri uri
özelliğine şu şekilde atanır:
- Bir QName nesnesi iletilirse,
uri
özelliği QName nesnesininuri
özelliğinin değerine ayarlanır. - Aksi takdirde,
uriValue
parametresi bir dizeye dönüştürülür veuri
özelliğine atanır.
Not: Bu sınıf iki yapıcı yöntemi girişini gösterir. Bunun nedeni her ikisinin de farklı parametreleri kabul etmesidir. İletilen argümanların türüne ve sayısına bağlı olarak yapıcı farklı davranır (her giriş için ayrıntılı olarak belirtilmiştir). ActionScript 3.0, yöntem veya yapıcı aşırı yüklemesini desteklemez.
ParametrelerprefixValue:* — Ad alanı için kullanılacak önek.
| |
uriValue:* — Alan adının Tekdüzen Kaynak Tanımlayıcısı (URI).
|
Namespace | () | Yapıcı |
public function Namespace(uriValue:*)
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Bir Namespace nesnesi oluşturur. Yeni Namespace nesnesinin uri
ve prefix
özelliklerine atanan değerler uriValue
parametresi için iletilen değerin türüne bağlıdır.
- İletilen bir değer yoksa,
prefix
veuri
özellikleri boş bir dizeye ayarlanır. - Değer bir Namespace nesnesiyse, nesnenin bir kopyası oluşturulur.
- Değer bir QName nesnesiyse,
uri
özelliği QName nesnesininuri
özelliğine ayarlanır.
Not: Bu sınıf iki yapıcı girişini gösterir. Bunun nedeni her ikisinin de farklı parametreleri kabul etmesidir. İletilen parametrelerin türüne ve sayısına bağlı olarak yapıcı farklı davranır (her giriş için ayrıntılı olarak belirtilmiştir). ActionScript 3.0, yöntem veya yapıcı aşırı yüklemesini desteklemez.
ParametreleruriValue:* — Alan adının Tekdüzen Kaynak Tanımlayıcısı (URI).
|
toString | () | yöntem |
valueOf | () | yöntem |
- Şu örnek, her biri bir ad alanını tanımlayan benzersiz bir URI'ye sahip üç Namespace nesnesi tanımlar.
- Şu örnek,
myXML
adlı bir XML değişkenini tanımlar ve bunugetRSS()
işlevinin dönüş değerine atar.getRSS()
yöntemi birden fazla ad alanı içeren bir XML nesnesini tanımlar ve bu XML nesnesini döndürür. - Şu örnek,
myXML
iletilmişparseRSS()
yöntemini çağırarak bir Array değişkenini tanımlar ve değerlendirir.parseRSS()
işlevinin içinde varsayılan XML ad alanırss
olarak tanımlanır; örnek,myXML
içindekiitem
listesini atayarak bir XMLList değişkenini tanımlar.myXML.item
içindeki farklı düğümler kullanılarak bir dizi oluşturulur ve bu dizinin içeriği doldurulur. Daha sonra dizi döndürülür. - Bir
for
döngüsü ve üçtrace()
çağrısı kullanılarak dizideki öğeler yazdırılır.
package { import flash.display.Sprite; public class NamespaceExample extends Sprite { private var rss:Namespace = new Namespace("http://purl.org/rss/1.0/"); private var rdf:Namespace = new Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#"); private var dc:Namespace = new Namespace("http://purl.org/dc/elements/1.1/"); public function NamespaceExample() { var myXML:XML = getRSS(); var rssItems:Array = parseRSS(myXML); var len:uint = rssItems.length; for (var i:uint; i < len; i++) { trace(rssItems[i].title); trace(rssItems[i].creator); trace(rssItems[i].date); // Adobe Flash Developer Center // Adobe // 2005-08-08 // Flex Developer Center // Adobe // 2005-10-16 } } private function parseRSS(rssXML:XML):Array { default xml namespace = rss; var items:XMLList = rssXML.item; var arr:Array = new Array(); var len:uint = items.length(); for (var i:uint; i < len; i++) { arr.push({title:items[i].title, creator:items[i].dc::creator, date:items[i].dc::date}); } return arr; } private function getRSS():XML { var myXML:XML = <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" > <channel rdf:about="http://www.xml.com/cs/xml/query/q/19"> <title>Test RSS</title> <link>http://www.adobe.com/</link> <description>This is a test RSS document.</description> <language>en-us</language> <items> <rdf:Seq> <rdf:li rdf:resource="http://www.adobe.com/devnet/flash/"/> <rdf:li rdf:resource="http://www.adobe.com/devnet/flex/"/> </rdf:Seq> </items> </channel> <item rdf:about="http://www.adobe.com/devnet/flash/"> <title>Adobe Flash Developer Center</title> <link>http://www.adobe.com/devnet/flash/</link> <description>Welcome to the Flash Developer Center</description> <dc:creator>Adobe</dc:creator> <dc:date>2005-08-08</dc:date> </item> <item rdf:about="http://www.adobe.com/devnet/flex/"> <title>Flex Developer Center</title> <link>http://www.adobe.com/devnet/flex/</link> <description>Welcome to the Flex Developer Center</description> <dc:creator>Adobe</dc:creator> <dc:date>2005-10-16</dc:date> </item> </rdf:RDF>; return myXML; } } }
hello
adlı üç yöntem farklı ad alanlarında bulunur; çağrıldıklarında her yöntem farklı bir dizeyi döndürür.
package { import flash.display.Sprite; public class Namespace_2_Example extends Sprite { public function Namespace_2_Example() { var vocab:MultilingualVocabulary = new MultilingualVocabulary(); trace(vocab.hello()); // hello var languages:Array = vocab.getLanguages(); for (var i:uint; i < languages.length; i++) { var ns:Namespace = languages[i]; if (ns != null) { trace(ns.toString() + ": " + vocab.ns::hello()); // hello // MultilingualVocabulary:Hawaiian: aloha // MultilingualVocabulary:French: bon jour } } } } } class MultilingualVocabulary { public namespace French; public namespace Hawaiian; private var languages:Array; public function MultilingualVocabulary() { languages = new Array(Hawaiian, French); } public function hello():String { return "hello"; } Hawaiian function hello():String { return "aloha"; } French function hello():String { return "bon jour"; } public function getLanguages():Array { return languages; } }
Şu örnek, dikdörtgen bir düğme için fare durumlarına karşılık gelen ad alanlarını ve renkleri tanımlar. Düğme her çizildiğinde, örnek, karşılık gelen ad alanı (out
, over
, down
) için bgcolor
değişkenine başvuruda bulunarak ilgili rengi (out için kırmızı; over için sarı; down için beyaz) uygular.
package { import flash.display.Sprite; public class Namespace_3_Example extends Sprite { public function Namespace_3_Example() { addChild(new StateButton("Press Me.")); } } } import flash.display.Sprite; import flash.text.TextField; import flash.events.Event; import flash.events.MouseEvent; class StateButton extends Sprite{ private namespace out; private namespace over; private namespace down; private var label:TextField; private var labelTxt:String; private var ns:Namespace; out var bgColor:Number = 0xFF0000; over var bgColor:Number = 0xFFFF00; down var bgColor:Number = 0xFFFFFF; public function StateButton(str:String) { buttonMode = true; labelTxt = str; ns = out; draw(); addLabel(); addListeners(); } private function addLabel():void { label = new TextField(); label.text = labelTxt; label.width = 50; label.height = 20; label.mouseEnabled = false; addChild(label); } private function addListeners():void { addEventListener(MouseEvent.MOUSE_UP, mouseOverHandler); addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler); addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); } private function mouseOutHandler(e:Event):void { ns = out; draw(); } private function mouseOverHandler(e:Event):void { ns = over; draw(); } private function mouseDownHandler(e:Event):void { ns = down; draw(); } private function draw():void { this.graphics.clear(); this.graphics.beginFill(ns::bgColor); this.graphics.drawRect(0, 0, 60, 20); } }
Tue Jun 12 2018, 01:09 PM Z