Hardcoded string "下一步", should use @string resource警告 (转载)

转自:http://blog.csdn.net/iqv520/article/details/7579513

在布局文件中,文本的设置使用如下写法时会有警告:Hardcoded string "下一步", should use @string resource

    <Button
            android:id="@+id/button1"
            android:layout_width="118dp"
            android:layout_height="wrap_content"
            android:text="下一步" />"  

虽然可以正常运行,但是这不是一个好习惯,应该在res/values/strings.xml中设置:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="message">下一步</string>
</resources> 

引用的时候使用

android:text="@string/message"

就行了。这样做可以做到一改全改,在支持多语言时也是很有用的。另外,颜色的设置也最好在color.xm中类似设置。

时间: 2024-08-02 16:04:16

Hardcoded string "下一步", should use @string resource警告 (转载)的相关文章

java中String s="abc"及String s=new String("abc")详解

1.   栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2.   栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器.但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性.另外,栈数据可以共 享,详见第3点.堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据.但缺点是,由于要 在运行时动态分配内存,存取速度较慢. ==是判断

&#39;hello world&#39;, String(&#39;hello world&#39;), new String(&#39;hello world&#39;)

http://www.queness.com/post/9806/5-missing-javascript-number-format-functions 这篇文章介绍5种常用的数字转换格式 但是里面有一个小小的不好的编程习惯 就是在把数字转成字符串的时候 使用了 var s = new String(xxx) 这在 JSLint 中报错  Do not  use String as a conctruct https://jslinterrors.com/do-not-use-a-as-a-c

collection.toArray(new String[0])中new String[0]的作用

new string[0]的作用 比如:String[] result = set.toArray(new String[0]); Collection的公有方法中,toArray()是比较重要的一个. 但是使用无参数的toArray()有一个缺点,就是转换后的数组类型是Object[]. 虽然Object数组也不是不能用,但当你真的想用一个具体类型的数组,比如String[]时,问题就来了.而把Object[]给cast成 String[]还是很麻烦的,需要用到这个: String[] str

C++ 中string.find() 函数的用法总结(转载)

#include<stdio.h> #include<iostream> using namespace std; void main() { ////find函数返回类型 size_typestring s("1a2b3c4d5e6f7g8h9i1a2b3c4d5e6f7g8ha9i");string flag;string::size_type position; //find 函数 返回jk 在s 中的下标位置 position = s.find(&quo

String s=&quot;abc&quot;及String s=new String(&quot;abc&quot;)详解

一.相关知识点 1.   栈(stack)与堆(heap)都是Java用来在Ram(随机存取存储器)中存放数据的地方, 栈数据可以共享. 2.   栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器.缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性. 堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据.缺点是,由于要在运行时动态分配内存,存取速度较慢. 3.   ==是判断两个对象是否是同一个对象即引用地址:equa

java的String和android的String有什么区别?

这是今天阿里电话面试被问到的,在之前确实没有想过(一直以为是一样的),于是面试完之后,我马上打开了源码,对这两个String类进行了比较,下面是我的发现. 首先我观察了这两个String类所导入的包,发现两者有些差异: 这是android版本: import java.io.Serializable; import java.io.UnsupportedEncodingException; import java.nio.ByteBuffer; import java.nio.CharBuffe

深入解析字符串的比较方法:“==”操作符;String.Equals方法;String.Compare方法;String.CompareOrdinal方法。

1:要判断2个字符串变量是否相等,最高效的方法是看它们是否指向相同的内存地址.前面使用RefernceEquals方法来比较.如果2个变量指向的是不同的内存地址,那么就需要逐字符的比较2个字符串的变量,才能确认它们是否相等.由于逐字比较会花费大量的时间,降低性能.所以.NET提供了String.Equals方法来优化比较过程该方法能自动地完成引用比较和值比较. string str1="abc"; string str2="abc"; string str3=Str

String s;和String s=null;和String s=&quot;a&quot;;有什么区别?

String s;和String s=null;和String s="a";有什么区别?   针对这三种情况,使用out.println(s);的时候,第一个会出现异常,第二个会输出null.第三个则会输出a.   这是为什么呢?这三句声明语句,各自作了什么呢? 答: 第一个只是定义了一个String类型变量s,并没有给它赋初值,在Java中,默认在使用一个变量的时候必须赋予它初值(降低风险). 第二个和第三个都定义了String类型变量s,并赋予它初值,只不过第二个赋予的值为null

Map&lt;String,List&lt;String&gt;&gt;转为List&lt;Map&lt;String,String&gt;&gt;

/**  *   * @param map  输入  * @param list 输出  * @param idx     次序  * @param pathMap 已选  */ void map2List(Map<String, List<String>> map, List<Map<String, String>> list,                                     int idx, HashMap<String,S