0
EclipseからAndroidスタジオに変更しました。私はエミュレータの密度に関する問題に直面しています。 たとえば、EclipseではSamsung S4は密度xxhdpiでしたが、Android Studioではxhdpiです。 サムスンS4:4,99' - 1080 X 1920Androidスタジオの密度
これは私のコードです:密度の
Float density = getResources().getDisplayMetrics().density;
if(density >= 1.0 && density < 1.5){ //mdpi
...
} else if(density >= 1.5 && density < 2.0){ //hdpi
...
} else if(density >= 2.0 && density < 3.0){ //xhdpi
...
} else if(density >= 3.0 && density < 4.0){ //xxhdpi
...
} else if(density >= 4.0){ //xxxhdpi
...
}
値は2.625です。 xhdpiの場合は入力されますが、xxhdpiに入力する必要があります。 問題は何ですか?これを行うより良い方法はありますか?
おかげ
コードのどこかに 'if'のチェーンがありますか?そうであれば、あなたは間違った、あるいは最適ではないことをしています。 – Henry
はい、あります。どうして?たとえば、私はdp、wrap_contentなどを使ってすべての画面で作業しようとしますが、手動でいくつかのサイズや位置を調整する必要があります。 – user3240604
これは通常、値をリソースファイルに入れることによって行われます。画面のサイズや密度に応じて異なるバージョンを使用できます。コード自体はクリーンで、リソース値を取得するだけです。 – Henry