2013-10-25 2 views
1

내 textview의 text.Text에는 두 개의 글꼴이 있습니다. 줄 간격이 다릅니다.두 개의 글꼴이있는 TextView의 텍스트 높이 [안드로이드]

질문 : Textview에 두 가지 유형의 선 간격이있는 텍스트가 포함 된 경우 각 텍스트의 높이를 어떻게 얻을 수 있습니까?

많은 샘플을 사용했지만 좋은 결과를 얻을 수 없었습니다. Paint 클래스의 메소드가 내 문제를 해결할 수 없습니다.

어떤 도움을

답변

1

.

노력
public static int getHeight(Context context, CharSequence text, int textSize, int deviceWidth, Typeface typeface,int padding) { 
      TextView textView = new TextView(context); 
      textView.setPadding(padding,0,padding,padding); 
      textView.setTypeface(typeface); 
      textView.setText(text, TextView.BufferType.SPANNABLE); 
      textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); 
      int widthMeasureSpec = View.MeasureSpec.makeMeasureSpec(deviceWidth, View.MeasureSpec.AT_MOST); 
      int heightMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED); 
      textView.measure(widthMeasureSpec, heightMeasureSpec); 
      return textView.getMeasuredHeight(); 
     } 
1

희망이 유 도움이 될 것입니다하시기 바랍니다 : 각 텍스트의 높이를 찾을 필요가 없습니다

 private SpannableStringBuilder setSpanColor(final String str, final String text) { 
    SpannableStringBuilder ssb = new SpannableStringBuilder(str); 

    if (str.contains(text)) { 
     ssb.setSpan(new ClickableSpan() { 
      @Override 
      public void onClick(View view) { 
      } 

      @Override 
      public void updateDrawState(TextPaint ds) { 
       ds.setTextSize(textSize); 

      } 
     }, str.indexOf(text), str.indexOf(text) + text.length(), 0); 
    } 
    return ssb; 

} 

    <string name="confirm_msg">PLEASE %1$s second String</string> 
    txt.setText(setSpansize(String.format(getString(R.string.confirm_msg), "$"), 
      String.valueOf("$"))); 
+0

감사하지만, 코드가 나에게 도움이되지 않습니다 :(당신이 한 줄에 필요한 –

+0

두 개의 글꼴 크기 맞죠? 각 글꼴의 –

+0

줄 높이가 달라요입니다 각 텍스트의 높이를 얻을 필요 –

관련 문제