2016-11-24 7 views
1

私のアプリでは、リサイズビュー(ピンチズームまたはSeekBar)でTextViewアイテムのtextsizeを調整することができます。デフォルトは、システム設定で選択されたテキストサイズでなければなりません。最小値は "非常に小さい"で、最大値はシステム設定の "巨大な"値でなければなりません。 Settings.System.getFloat(contextSettings.System.FONT_SCALE)またはTextView.setTextAppearance(context, android.R.style.TextAppearance_DeviceDefault_Large)を使用するヒントが見つかりましたが、私は希望の結果を得ることができませんTextView.setTextSize(TypedValue.COMPLEX_UNIT_PX, value). アイデア?事前にJavaでテキストサイズ設定を取得する方法(最小、最大、選択)

おかげで、 ディルク

+0

'TextView.setTextSize(TypedValue.COMPLEX_UNIT_SP、value)'を試しましたか? –

+0

@sunnil sunny - はい、ありがとうございます。しかし、私の質問には本当に答えません。現在のtextsizeを得るには、(レイアウトに追加することなく) 'TextView'オブジェクトを作成し、' getTextSize() 'メソッドを呼び出します。よりエレガントな方法があり、システム設定ダイアログに応じて最小値と最大値を取得する方法もあります。 –

+0

私はあなたがこれを探していると思うhttp://stackoverflow.com/questions/28411099/how-to-get-default-text-size-from-textview-on-widget。 –

答えて

0

はあなたがここで正しいunit.Tryにこの

int size = ((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, value ,getResources().getDisplayMetrics()) 

を「値」に変換されていないので、それはあなたの値はSP

に正しい単位に変更されていかもしれませ
TextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, size) 
関連する問題