美文网首页
Android通过String.format格式化(动态改变)字

Android通过String.format格式化(动态改变)字

作者: 爱码士 | 来源:发表于2017-12-11 14:10 被阅读156次

    首先需要先了解JAVA字符串格式化-String.format()的使用

    http://blog.csdn.net/lonely_fireworks/article/details/7962171/

    效果图如下:


    1、在string.xml文件中定义一个字符串

    <string name="zh_like">%1$d个喜欢</string>
    <string name="zh_comment">%1$d条评论</string>
    

    2、在代码中通过String.format方法来格式化该字符串

    tvDetailBottomLike.setText(String.format(Locale.getDefault(), getResources().getString(R.string.zh_like), detailExtraBean.getPopularity()));
    tvDetailBottomComment.setText(String.format(Locale.getDefault(), getResources().getString(R.string.zh_comment), detailExtraBean.getComments()));
    

    如果遇到有多个参数的话我们可以遵从 %+参数位置+$+格式化类型  这个格式来写
    例如:

    <string name="today_state_string">您正与%1$d位朋友在一起游戏,本周排名提升了%2$.3f,获得%3$s的称号,等级为%4$c!</string>  
    
    private void showTodayState( int totalUser, float upRate, String hornor, char level ){  
            String todayStateStr = String.format( Locale.getDefault(),getResources( ).getString( R.string.today_state_string), totalUser, upRate, hornor, level );  
            mTodayStateTxt.setText( todayStateStr );  
        }  
    

    相关文章

      网友评论

          本文标题:Android通过String.format格式化(动态改变)字

          本文链接:https://www.haomeiwen.com/subject/bayiixtx.html