0

Flex では 320 を超える画面 dpi 解像度がサポートされていないことを読みましたが、この記事によると、カスタム実装を作成できるはずです。したがって、テスト目的で、これらの2行をapache flex 4.10で追加しました

applicationDPI="320"
runtimeDPIProvider="DPITestClass"

これを含む DPITestClass を作成しました

override public function get runtimeDPI() : Number
{
    return 3200;
}

私が理解している限り、これは各デバイスですべてのピクセルパラメーターを10倍にスケーリングする必要がありますが、代わりにまったく何もしません。デバイスのdpiに応じてピクセルをスケーリングします-runtimeDPIProviderが設定されていないのと同じです(メインクラスにruntimeDPIを記録する場合を除き、 「3200」と表示されます)。

これは、より高い dpi がまだ一般的にサポートされておらず、この拡張機能がフレックス フレームワーク内のどこかでブロックされているためですか、それとも何か間違ったことをしたのでしょうか?

4

1 に答える 1

1

runtimeDPI メソッドをオーバーライドして、dpi の範囲を表す DPIClassification 定数 (DPI_160、DPI_240、DPI_360 など) を返すことができます。通常、間違ったランタイム dpi を報告するデバイスを修正するために使用されます。

Flex は 320 dpi 以上をサポートします。Apache Flex 4.9 以前を使用する場合、アプリケーションを 320 dpi バケットに入れるだけです。Apache Flex 4.10 は 480 dpi バケットのサポートを追加し、Apache Flex 4.11 は 120 および 640 dpi バケットの両方のサポートを追加します。各 dpi バケットは dpi 範囲に合わせて最適化されていますが、異なる dpi またはそれ以上の dpi がある場合でもアプリケーションの動作は停止しません。

于 2013-09-23T05:26:03.973 に答える