.sp
在 Android / Android Studio 环境下:
-
sp
是一种字体尺寸单位(scale-independent pixels)- 全称:Scale-independent Pixels
- 用来指定文字大小,和
dp
类似,但会随用户的系统字体缩放设置变化。 - 常用在
TextView
、Compose 的fontSize = 16.sp
等。
为什么用 sp
而不是 dp
:
- Android 用户可以在系统里调整"字体大小";
- 用
sp
时,用户调大字体,文字会随之放大;而dp
不会。
例子(XML):
xml
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:textSize="16sp" />
例子(Jetpack Compose):
kotlin
Text(
text = "Hello",
fontSize = 18.sp // 注意 Compose 里也用 sp
)
总结 :
sp
是 文字推荐单位 ;dp
用于布局尺寸。
看到的 sp
多半指 字体尺寸单位,比如:
kotlin
Text(
text = "Hello Android",
fontSize = 20.sp
)
如果你是在手机文件系统里看到 .sp
文件,那就是 SharedPreferences 保存的文件,一般开发者不用手动修改。
界面层次结构
界面层次结构基于包含机制,意即一个组件可以包含一个或多个组件,有时会用"父级"和"子级"这两个词来表述。这种说法是指,父界面元素包含子界面元素,而子界面元素还可以继续包含子界面元素。在此部分中,您将了解可用作父界面元素的 Column、Row 和 Box 可组合项。