4

現在のデフォルトの Android フォントのピクセル単位のサイズを知る必要があります。ここで非常によく似た質問にリストされているアプローチをコピーしました。ただし、サイズをピクセル単位で取得する代わりに、常に -1 を取得します。私が間違っていることはありますか?

コードは次のとおりです。

    Context context = getActivity();
    TypedValue typedValue = new TypedValue(); 
    context.getTheme().resolveAttribute(android.R.attr.textAppearance, typedValue, true);
    int[] textSizeAttr = new int[] { android.R.attr.textSize };
    TypedArray a = context.obtainStyledAttributes((AttributeSet) typedValue.string, textSizeAttr);
    textSize = a.getDimensionPixelSize(0, -1);
    Log.e("Metrics", "text size in dp = " +  String.valueOf(textSize));
    a.recycle()
4

2 に答える 2

6

textView のテキスト サイズを取得するのは非常に簡単です。コードは次のとおりです。

textView.getTextSize();

この TextView のデフォルトのテキスト サイズのサイズ (ピクセル単位) を返します

于 2013-02-27T05:17:18.683 に答える
1

このコード行を変更するだけです

TypedArray a = context.obtainStyledAttributes((AttributeSet) typedValue.string, textSizeAttr);

 TypedArray a = context.obtainStyledAttributes(typedValue.data, textSizeAttr);
于 2013-02-27T05:44:27.333 に答える