ボタンのテキストの textSize をできるだけ大きく設定したいのですが、リソース ファイルと同じボタンのサイズを変更しないように制限します。
それを達成する方法を知っていますか?
そのためにテキストビューの自動スケーリングを使用できます。
これが役に立ちますように
// Determine Scaled Density for later calculations
Display dd = ((Activity) m_Context).getWindowManager().getDefaultDisplay();
DisplayMetrics dm = new DisplayMetrics();
dd.getMetrics(dm);
float m_ScaledDensity = dm.scaledDensity;
Rect bounds = new Rect();
Paint p = new Paint();
p.setTypeface(btn.getTypeface());
// W is a very wide character
String sample = "NeedsToFIt"
int maxFont;
for (maxFont= 1
; -bounds.top <= btn.getHeight() && bounds.right <= btn.getWidth()
; maxFont++) {
p.setTextSize(maxFont);
p.getTextBounds(sample, 0, sample.length(), bounds);
}
maxFont = (int) ((maxFont - 1) / m_ScaledDensity);
btn.setTextSize(maxFont);