2017-03-15 22 views
0

私はここで検索し、SpannableStringでいくつかの異なる解決策を試してみましたが、正しい方法を見つけることができません。文字列の最後の文字の文字サイズを変更します

私がしたいことは、自分の文字列の最後の文字のサイズを変更することです。 例200(サイズ22)$(サイズ15)

コード:

txPriceBefore.setText(getPrice() + " $") 

おかげ

答えて

3

この方法を試してみてください...

String yourString= getPrice() + " $"; 
SpannableString spanString= new SpannableString(yourString); 
spanString.setSpan(new RelativeSizeSpan(2f), yourString.length()-1,yourString.length(), 0); // set size 
txPriceBefore.setText(spanString); 
+0

新しいSpannableStringには何が入っていますか? –

+0

更新された回答を確認する –

0

は、このメソッドを呼び出し

txPriceBefore.setText(setSpanableString(getPrice() + " $")) 

public SpannableString setSpanableString(String textString){ 

      int startIndex = textString.indexOf("₹$"); 

      SpannableString spanString = new SpannableString(textString); 
      spanString.setSpan(new RelativeSizeSpan(5f), startIndex , textString.length(), 0);// set your font size here 

      return spanString; 
     } 
0

Do彼の

int textSize1 = // small size here. 
int textSize2 = // large size here. 

String text1 = // get your price here 
String text2 = "$"; 

SpannableString span1 = new SpannableString(text1); 
span1.setSpan(new AbsoluteSizeSpan(textSize1), 0, text1.length(), SPAN_INCLUSIVE_INCLUSIVE); 

SpannableString span2 = new SpannableString(text2); 
span2.setSpan(new AbsoluteSizeSpan(textSize2), 0, 1, SPAN_INCLUSIVE_INCLUSIVE); 

// Join both spans together with a space 
CharSequence finalText = TextUtils.concat(span1, " ", span2); 
関連する問題