2017-02-16 13 views
1

私の仕事では、私たちのUIは常にsp(またはpx)のtextView(aTextView)のフォントサイズをマークしています。 bViewの位置に影響を与えます;これは少しの差で全体的なレイアウトを変更します。TextView実際の高さがwrap_contentの単一行である

私はwrap_contentを使ってTextViewのlayout_heightを設定すると、異なるtextSizeでのtextviewの実際の高さを知りたいと思います。この問題は1px = 1spという簡単な方法で議論できます。

この方法では、ここで
+0

これを確認しましたか:https://stackoverflow.com/questions/3779173/determining-the-size-of-an-android-view-at-runtime? – fiddler

答えて

0

あなたはtextSizeピクセルに指定されていない場合、のTextView高さ

public static int getHeight(Context context, String text, int textSize, int deviceWidth) { 
    TextView textView = new TextView(context); 
    textView.setText(text); 
    textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize); 
    int widthMeasureSpec = MeasureSpec.makeMeasureSpec(deviceWidth, MeasureSpec.AT_MOST); 
    int heightMeasureSpec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED); 
    textView.measure(widthMeasureSpec, heightMeasureSpec); 
    return textView.getMeasuredHeight(); 
} 

を識別setTextSize()の最初のPARAMTERを変更することができます。私の経験からHow to Measure TextView Height Based on Device Width and Font Size?

+0

このメソッドをお寄せいただきありがとうございます。私の意図は公式情報の上と下のパディングを知ることです。 – lichao

0

からコピー

16sp/16dpのテキストサイズとTextViewが18dpの高さを持つことになり、上部と下部にすなわち16dp + 1DPパディング。

これは単なる見積もりにすぎません。実際の高さは、フォントやフォントサイズなどの他の多くの要因に依存する場合もあれば、そうでない場合もあります。チェックするには、レイアウトの横に正方形のビューを配置するか、コードでチェックします。

TextViewのサイズに関する正式な情報が見つかった場合、ここに投稿します。

+0

yean、私はあなたの結論だけではなく、見積もりでそれを測定しました。私が必要とするあなたの公式情報のために待ってください。私はそれを長い間見つけました。 – lichao

0

制約レイアウトを使用すると、問題を解決できます。試してみてください。 Image

TextView BはImageViewに垂直方向に制約されており、その逆も可能です。拘束されたアイテムは、拘束されたアイテムに従って自動的にサイズ変更されます。

関連する問題