[解決済み] アンドロイドでプログラム的に画面密度を取得する?
2022-03-18 01:01:07
質問
アンドロイドで画面密度をプログラム的に取得する方法は?
つまり 現在のデバイスのスクリーンdpiを見つけるには?
解決方法は?
表示に関する情報は ディスプレイメトリクス 構造体を使用します。
DisplayMetrics metrics = getResources().getDisplayMetrics();
Androidは直接ピクセルマッピングを使用しませんが、量子化された一握りの密度独立ピクセル値を使用し、実際の画面サイズにスケーリングします。そのため
metrics.densityDpi
プロパティは
DENSITY_xxx
定数 (
120
,
160
,
213
,
240
,
320
,
480
または
640
dpi)を使用します。
が必要な場合は
実際
lcdのピクセル密度(おそらくOpenGLアプリのために)。
metrics.xdpi
と
metrics.ydpi
プロパティで、それぞれ水平方向と垂直方向の密度を指定します。
4より前のAPI Levelsをターゲットにしている場合。
metrics.density
プロパティは、基準密度(160dpi)からの浮動小数点スケーリングファクターです。現在、同じ値を提供するのは
metrics.densityDpi
を計算することができます。
int densityDpi = (int)(metrics.density * 160f);
関連
-
AndroidStudio reports Could not resolve all artifacts for configuration ':app:classpath'.
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] EclipseのAndroidプラグインで "Debug certificate expired "エラーが発生する。
-
[解決済み] Androidで画面の大きさをピクセル単位で取得する方法
-
[解決済み] Androidのローテーションでアクティビティを再開する
-
[解決済み] Androidで現在の時刻と日付を取得する方法
-
[解決済み】「px」、「dip」、「dp」、「sp」の違いは?
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Androidのadbデバイスがオフラインであることが判明
-
Android開発で「Attempt to invoke virtual method 'XXX()' on null object reference」というヌルポインター例外に遭遇する。
-
JVMのエラーに遭遇しました。Java Runtime Environmentによって致命的なエラーが検出されました。
-
view.getRootView()の本当の意味とテストについて
-
問題 ---- Android ---- ActivityManager: Error: アクティビティクラス{xx/xx.MainActivity}が存在しない
-
Android--shape--描画のコーナー、グラデーション、パディング、サイズ、ソリッド、ストロークのプロパティを指定する。
-
アンドロイドの遅延実行のいくつかの方法
-
AndroidStudioのショートカット 検索/置換
-
Android Studio常见错误之:Rendering Problems/The following classes could not be instantiated
-
[解決済み】「px」、「dip」、「dp」、「sp」の違いは?