2017-08-09 7 views
-1

プログラムでサイズを変更するTextView要素を作成しています。しかし、TextViewはテキストのために小さすぎることがあり、時には追加のテキスト行を切り取ることもあります。プログラムでTextViewサイズを設定すると、wrap_contentよりも小さくなります

TextViewの最小高さをWRAP_CONTENTに設定する方法はありますか?

編集:最大サイズはWRAP_CONTENTより大きくすることができます。

+0

をすることによって設定することができますが –

+0

詳しい調査がそのWRAP_CONTENTを示しており、あなたの全体のコードを共有してくださいすることができます実際にはより大きな問題が発生するため、より良い回避策としてTextViewの最小サイズをハッキングする方法を考え出しました。 – Baracus

答えて

1
TextView tv= new TextView(context); 
tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
+0

多くの調査では、WRAP_CONTENTが実際にはより大きな問題を引き起こすことがわかったので、TextViewの最小サイズをより良い回避策としてハックする方法を見つけました。ご協力ありがとうございました。 – Baracus

0

次のコードを試してください。あなたのテキストビューは、その親コン​​テナ(レイアウト)に依存してもよいよう

<TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="MANAGER LOGIN" 
     android:textColor="#FFF"/> 
+0

より多くの調査では、WRAP_CONTENTが実際に大きな問題を引き起こすことがわかったので、TextViewの最小サイズをハッキングする方法を考えました。ご協力ありがとうございました。 – Baracus

0

はいあなたがプログラムで

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 
       LayoutParams.WRAP_CONTENT); 
    textView.setLayoutParams(params); 
+1

より多くの調査によると、実際にはWRAP_CONTENTが大きな問題を引き起こすため、より良い回避策としてTextViewの最小サイズをハッキングする方法を考え出しました。ご協力ありがとうございました。 – Baracus

0
TextView tv = (TextView) findViewById(R.id.tv); 
LinearLayout llout = (LinearLayout) findViewById(R.id.llout); 

tv.measure(0, 0); 
int text = tv.getMeasuredWidth(); 
llout.measure(0,0); 
int lWidth = llout.getWidth(); 


if (text > (lWidth/3)) 
{ 
    tv.setLayoutParams(new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.WRAP_CONTENT, 1.0f)); 
} 
else 
{ 
    tv.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT)); 
} 
+0

より多くの調査では、WRAP_CONTENTが実際に大きな問題を引き起こすことがわかったので、TextViewの最小サイズをより良い回避策としてハッキングする方法を見つけました。ご協力ありがとうございました。 – Baracus

関連する問題