dimens.xml
のリソースを使用できます。たとえば、ドイツ語の場合はres/values-de/dimens.xml
、フランスの場合はres/values-fr/dimens.xml
というファイルを作成します。
dimens.xml であなたLayout.xmlで
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="f_size">16sp</dimen>
</resources>
は
<TextView
android:textSize="@dimen/f_size"/>
ことがありますが、これは役立ちます
EDIT:
画面解像度に0
文字列の扶養:
float density = context.getResources().getDisplayMetrics().density;
if (density >= 4.0) {
tv1.setText(getString(R.string.xxxhdpiXY));
tv1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18);
}
if (density >= 3.0) {
tv1.setText(getString(R.string.xxhdpiXY));
tv1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);
}
if (density >= 2.0) {
tv1.setText(getString(R.string.xhdpiXY));
tv1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15);
}
if (density >= 1.5) {
tv1.setText(getString(R.string.hdpiXY));
tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);
}
if (density >= 1.0) {
tv1.setText(getString(R.string.mhdpiXY));
tv1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 13);
}
出典
2016-05-06 08:36:39
Oli
ありがとう、私の問題は、異なる言語を持つが、異なる解像度で同じ言語ではありません。私はデバイスの画面解像度に応じて同じ文字列/言語の2つの異なる値を使用したいと思います。 –
大丈夫です。私はこれがコードによってのみ可能だと思います。複数の解像度に対して同じ文字列を作成し、 'getResources()。getDisplayMetrics()'で設定します。 – Oli