Android 资源的使用
一、dimension资源的使用
Android中dimension单位有: px 像素 dp 密度 mm 毫米 pt 点 sp 刻度 in英寸
dimension资源的定义
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="px">10px</dimen>
<dimen name="dp">10dp</dimen>
<dimen name="sp">70sp</dimen>
</resources>
dimension资源的使用有两种方法
一种在Layout中用:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
android:textSize="@dimen/sp"/>
一种在java文件中用:
this.getResources().getDimension(R.dimen.dp);
二、资源String,StringArrary,plurals的使用
xml文件如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Resource_Plurals</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<string name="format_msg">we are %1$s, I am %2$d years old.</string>
<plurals name="student">
<item quantity="one">I am 1 student</item>
<item quantity="other">We are %d students</item>
</plurals>
<string-array name="list">
<item>Item1</item>
<item>Item2</item>
<item>Item3</item>
<item>Item4</item>
</string-array>
</resources>
资源的使用:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Resources resources = getResources();
String text = String.format( getString(R.string.format_msg), "eworker",21);
Log.i("app_name", text);
String[] listsStrings = resources.getStringArray(R.array.list);
String string = resources.getQuantityString(R.plurals.student, 10, 10);
Log.i("plurals", string);
String string3 = resources.getQuantityString(R.plurals.student, 50, 50);
Log.i("plurals", string3);
}
1、 getString(R.string.format_msg) 这个方法可以获得想要的资源。
2、String text = String.format( getString(R.string.format_msg), "eworker",21);
<string name="format_msg">we are %1$s, I am %2$d years old.</string> 这条资源1$s代表字符, %2$d代表数字,所有要进行格式转化。
3、String[] listsStrings = resources.getStringArray(R.array.list);这是一个数组列表。
4、String string = resources.getQuantityString(R.plurals.student, 10, 10); 这个使用的是plurals。
最终的显示的内容为We are 10 students; We are 50 students
最终的结果可以看下图: