【Android之路】.sp和界面层次结构

.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 可组合项。

相关推荐
雨白7 分钟前
Kotlin 协程的灵魂:结构化并发详解
android·kotlin
我命由我1234513 分钟前
Android 开发问题:getLeft、getRight、getTop、getBottom 方法返回的值都为 0
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
Modu_MrLiu14 分钟前
Android实战进阶 - 用户闲置超时自动退出登录功能详解
android·超时保护·实战进阶·长时间未操作超时保护·闲置超时
Jeled34 分钟前
Android 网络层最佳实践:Retrofit + OkHttp 封装与实战
android·okhttp·kotlin·android studio·retrofit
信田君952735 分钟前
瑞莎星瑞(Radxa Orion O6) 基于 Android OS 使用 NPU的图片模糊查找APP 开发
android·人工智能·深度学习·神经网络
tangweiguo030519871 小时前
Kotlin 实现 Android 网络状态检测工具类
android·网络·kotlin
nvvas2 小时前
Android Studio JAVA开发按钮跳转功能
android·java·android studio
怪兽20142 小时前
Android多进程通信机制
android·面试
叶羽西3 小时前
Android CarService调试操作
android
千里马-horse3 小时前
在android中 spdlog库的log如何在控制台上输出
android·c++·spdlog