string.xml 规范

作者: utopia84 | 来源:发表于2017-03-14 10:18 被阅读0次

    前言:如果你有更好的私藏文章,不凡分享出来,独乐乐不如众乐乐(⊙o⊙)

    本文总结了 Android string.xml 书写相关的一些原则和规范,只覆盖了常见的场景。有些规则只是针对自己项目而言,并非其他做法都是错误的。


    一、资源独立

    例如PullToRefreshListView有两个状态,下拉刷新和上拉加载,那么你可以在string.xml里面定义:

    <string name="pull_to_refresh">加载中...</string>

    这样,假设需求变了,就要求下拉的时候提示“刷新中...”,那么你将有一半的工作量去修改代码去隔离刷新和加载,所以为了提高程序的扩展性,建议一开始就划分开:

    <string name="pull_to_refresh_refreshing">刷新中...</string>

    <string name="pull_to_refresh_loading">加载中...</string>

    二、使用前缀

    使用前缀配合注释,能增加程序的可读性

    <!-- 抽屉相关 -->

    <string name="navigation_drawer_open">Open navigation drawer</string>

    <string name="navigation_drawer_close">Close navigation drawer</string>

    三、格式化

    string中若有可变字符串,建议少用+号拼接,使用Android Format格式化语法,例如:

    string.xml

    <string name="new_data_toast_message">条更新</string>

    Test.java

    int count = 10 ;

    String result = count + " " + getString(R.string.new_data_toast_message);

    // result = "10 条更新"

    建议使用Format格式化

    string.xml

    <string name="new_data_toast_message">%d 条更新</string>

    Test.java

    int count = 10 ;

    String result = getString(R.string.new_data_toast_message , count);

    // result = "10 条更新"

    四、html样式

    在string.xml里也可以保存html的一些样式

    <string name="html_text" formatted="false">

    <![CDATA[

    <font color=\'#fff\'>文字1</font>文字2<font color=\'#000\'>文字3</font>

     ]]>

    </string>

    在java中可以这么引用:

    String str = Html.formHtml(getString(R.string.html_text));

    相关文章

      网友评论

        本文标题:string.xml 规范

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