PythonIDE Docs
中文
简体中文

环境值 API

environment_value、color_scheme、locale、layout_direction 和动态字体。

environment_value(key, value) 用来设置少量通用环境值。它是一个通用入口;如果已经有更直接的专用修饰符,优先用专用修饰符。

#签名

python
environment_value(key, value)

#什么时候用

  • 你想批量给一段视图树施加语言、方向、动态字体或文本环境。
  • 你要覆盖 localelayout_directiondynamic_type_size 这类没有独立高频包装的环境项。
  • 你已经知道目标 key,不想拆成多个专用修饰符。

#当前支持的 key

key作用更直接的写法
color_schemelight / dark强制明暗模式。preferred_color_scheme(...)
layout_directionleft_to_right / right_to_left控制布局方向。
locale语言地区标识,如 zh_CNen_US影响日期、数字、本地化格式。
line_spacing数字,如 46设置行距。
multiline_text_alignmentleading / center / trailing多行文本对齐。multiline_text_alignment(...)
allow_tight_spacingTrue / False是否允许文字收紧间距。
truncation_modetail / head / middle文本截断位置。truncation_mode(...)
dynamic_type_sizexSmallsmallmediumlargexLargexxLargexxxLargeaccessibility1accessibility5动态字体等级。
redactionplaceholder / none占位式骨架屏或取消 redaction。
autocorrectionTrue / False控制自动纠错;对输入控件更有意义。TextField / SecureField 优先用构造参数
text_caseuppercase / lowercase / none统一大小写风格。

#推荐写法

python
import appui


def body():
    return appui.NavigationStack(
        appui.VStack([
            appui.Text("环境值示例"),
            appui.Text("这段文字会使用更大的动态字体和更宽的行距。")
                .line_limit(2),
        ], spacing=12)
        .padding()
        .navigation_title("Environment")
        .environment_value("locale", "zh_CN")
        .environment_value("dynamic_type_size", "xLarge")
        .environment_value("line_spacing", 6)
    )


appui.run(body)

#专用修饰符优先

这些场景优先用专用 API,不要为了“统一写法”强行全部塞进 environment_value

  • 明暗模式:preferred_color_scheme("dark")
  • 多行文本对齐:multiline_text_alignment("leading")
  • 截断:truncation_mode("middle")
  • 输入框自动纠错:TextField(..., autocorrection_disabled=...)

#注意事项

  • environment_value 更适合“给一整段视图树施加环境”,不是每个修饰符都拿它代替。
  • dynamic_type_size 依赖较新的系统版本;过低系统可能不会生效。
  • autocorrection 的实际体验最稳的方式仍然是直接在输入控件构造参数里声明。
  • 不在当前支持表里的 key 不保证生效。