呼び出しTextView.setTextSize()
が異常に動作しています。 を呼び出した後、setTextSize
取得すると、getTextSize
以前に設定した値よりもはるかに高い値が返されます。
私たちがやっていることは次のとおりです:
zoomControl.setOnZoomInClickListener(new OnClickListener() {
public void onClick(View view) {
float size = mViewShabad.getTextSize() + 1;
textView.setTextSize(size);
}
});
これを見たことがある人はいますか?
ベストアンサー1
ここでの違いは、このsetTextSize(int size)
方法では、単位タイプがデフォルトで「sp」または「スケールされたピクセル」であることです。この値は、画面密度 (ldpi、mdpi、hdpi) ごとに異なるピクセル寸法になります。
getTextSize()
一方、はテキストの実際のピクセル寸法を返します。
単位の種類を指定するために使用できますsetTextSize(int unit, float size)
。これに関する定数値は TypedValue クラスにありますが、その一部を以下に示します。
TypedValue.COMPLEX_UNIT_PX //Pixels
TypedValue.COMPLEX_UNIT_SP //Scaled Pixels
TypedValue.COMPLEX_UNIT_DIP //Device Independent Pixels