Met een landinstelling wordt een specifieke combinatie van taal en culturele conventies voor een land of regio aangeduid.
De landinstellings-id kan probleemloos worden beheerd als tekenreeks. Met de LocaleID-klasse kunt u extra informatie ophalen die te maken heeft met een landinstelling.
U kunt een LocaleID als volgt maken:
var locale:LocaleID = new LocaleID("es-MX");
Nadat het LocaleID-object is gemaakt, kunt u de gegevens over de landinstellings-id ophalen. Gebruik de methoden
getKeysAndValues()
,
getLanguage()
,
getRegion()
,
getScript()
,
getVariant()
en
isRightToLeft()
, en de eigenschap
name
.
De waarden die u ophaalt met deze methoden en eigenschappen bevatten extra informatie over de landinstellingen die niet rechtstreeks kan worden opgehaald van de landinstellings-id.
Wanneer een toepassing een service maakt die rekening houdt met de landinstelling, zoals bijvoorbeeld een functie voor datumnotatie, moet de toepassing aangeven welke landinstellingen worden gebruikt. De lijst met ondersteunde landinstellingen verschilt per besturingssysteem. De aangevraagde landinstellingen zijn daarom niet altijd beschikbaar.
Flash Player zoekt eerst naar overeenkomsten op basis van de taalcode van de landinstelling die u wilt instellen. Vervolgens probeert het programma om de landinstelling te verfijnen door te zoeken naar een identiek schrijfsysteem (schrift) en regio. Bijvoorbeeld:
var loc:LocaleID = new LocaleID("es");
trace(loc.getLanguage()); // es
trace(loc.getScript()); // Latn
trace(loc.getRegion()); // ES
In dit voorbeeld heeft de
LocaleID()
-constructor gegevens over de landinstelling opgehaald die het meest overeenkomen met de taalcode “es” voor de desbetreffende gebruiker.
Beperkingen van andere klassen voor landinstelling en taal
Met de klasse
fl.lang.Locale
kunt u teksttekenreeksen op basis van een landinstelling vervangen. Hiervoor gebruikt u resourcepakketten met tekenreekswaarden. Deze klasse biedt echter geen ondersteuning voor de internationalisatie van functies zoals getal-, valuta- of datumnotatie, sorteren, zoekovereenkomsten en dergelijke. Bovendien is deze klasse alleen beschikbaar in Flash Professional.
U kunt de huidige taalcode-instelling van het besturingssysteem ook ophalen met de eigenschap
flash.system.Capabilities.language
. Deze eigenschap haalt echter alleen de ISO 639-1-taalcode op die uit twee letters bestaat en niet de volledige landinstellings-id. Bovendien wordt alleen een specifieke set met landinstellingen ondersteund.
Met AIR 1.5 kunt u de eigenschap
flash.system.Capabilities.languages
gebruiken. Hiermee beschikt u over een array met talen voor de gebruikersinterface waaraan de gebruiker zijn voorkeur geeft. Deze eigenschap heeft daarom niet de beperkingen van
Capabilities.language
.