Android通过String.format格式化(动态改变)字符串资源的显示内容

首先需要先了解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 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,831评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,288评论 19 139
  • longaaaa =14200666; Console.WriteLine(aaaa.ToString("N0")...
    鱼落于天阅读 962评论 0 1
  • 相信每个人,特别是对生活品质有追求的女性朋友,心里都有一个梦想,那就是拥有一张完美的肖像照。照片里的那个她,不一定...
    Vivian_9888阅读 937评论 0 3
  • 从去年下半年开始,男明星用实际行动不断告诉我们——出轨,是每个男人都会犯的错(当然,有些时候,他们只是“碰...
    三色堇608阅读 264评论 0 0