1

ゲームをさまざまなデバイスで適切に表示/スケーリングできるようにしようとしています。dpおよびspメトリックを可能な限りアプリに導入しようとしていますが、この場合、レイアウトとウィジェットのサイズ設定にこれらのメトリックを使用するようにゲームをリファクタリングしています。

以前は、レイアウトのサイズを変更size_hintして、すべてを親に相対的なサイズにするために使用していました (アプリ自体にはサイズが指定されておらず、ウィンドウにも指定されていませんが、ルート ウィジェット/レイアウトには がありますsize_hint=(1, 1))。このシステムにはdp値があり、それらがどうあるべきかわかりません。

ルート widgetApp自体、またはWindowのサイズdpsize_hint. そして、このために、デバイス画面の解像度または密度を取得することが大きな助けになるように思われました(したがって、それを使用して、デバイスごとにルートウィジェット/アプリ/ウィンドウのサイズを変更できました)。それはKivyで可能ですか?これは機能しますか?より良い方法はありますか?あなたならどうしますか?ありがとう

4

1 に答える 1

2

size_hint を単独で使用すると、(ご指摘のとおり) すべてのサイズが相対的になるため、ある程度のスケールの独立性が保証されます。

Kivy はデバイスの解像度に関連する値を内部的にチェックします。これが基本的に dp のポイントです。たとえば、センチメートルなどの画面上の実際のサイズに関して、どのデバイスでもdp(10)同じ実際のサイズにする必要があります。デバイスが正確に正しい結果を報告しないと私が思う限り、これは実際にはまったく正しくありませんが、これが非常に重要でない限り、どこでもほとんど同じように見えるようにすでに処理されます.

アプリのサイズを設定することについて何を意味するのかわかりません.Androidのウィンドウマネージャーでは、アプリは画面いっぱいに表示されます(少なくともほとんどの場合)。

于 2015-06-24T22:29:01.257 に答える