Text
Hiển thị cách đọc, đơn vị hoặc văn bản mô tả. Có thể đặt phông chữ, cỡ chữ, căn chỉnh, ngắt dòng và cắt bớt; nội dung được chuyển đổi thống nhất thành một chuỗi và các giá trị trống được hiển thị dưới dạng trống.
Ví dụ
function main() {
return (
<Text fontSize={32} font="rounded" lineLimit={2} truncationMode="tail">
Hello, CapDrive
</Text>
);
}
Cách sử dụng
- Nội dung dùng toString(); null/undefined để trống. Ghép biểu tượng với HStack, không lồng View trong Text. Giới hạn width trước lineLimit/truncationMode. minimumScaleFactor=1 không thu nhỏ.
- Kích thước số dùng điểm. auto đo nội dung; fill dùng phần cha cấp. Đặt kích thước khung trước; fill và chữ dài không mở rộng khung cha cố định.
Thuộc tính
children?TextContent | TextContent[]Nội dung vẽ con.
fontSize?numberCỡ chữ tính bằng point.
14fontWeight?"ultraLight" | "thin" | "light" | "regular" | "medium" | "semibold" | "bold" | "heavy" | "black"Độ đậm chữ từ ultraLight đến black; regular là thường.
"regular"font?"default" | "rounded" | "monospaced" | "serif"Kiểu phông: default, rounded, monospaced hoặc serif.
"default"color?PaintMàu vẽ, bao gồm màu HDR.
HDR($env.foreground)alignment?"leading" | "center" | "trailing"Căn chữ trong chiều rộng có sẵn: leading, center hoặc trailing.
"leading"lineLimit?number | nullSố dòng tối đa; null hoặc bỏ qua cho phép xuống dòng không giới hạn số dòng.
1truncationMode?"head" | "middle" | "tail"Vị trí lược bỏ chữ khi không vừa: head, middle hoặc tail.
"tail"minimumScaleFactor?numberTỷ lệ chữ nhỏ nhất khi thiếu chỗ: 0.01–1; 1 không thu nhỏ.
0.5monospacedDigits?booleanChữ số rộng bằng nhau để tránh nhảy ngang khi giá trị đổi.
trueletterSpacing?numberKhoảng cách ký tự tăng thêm theo điểm.
0contentAnimation?ContentAnimationChuyển tiếp khi nội dung đổi. Chọn type được hỗ trợ; duration/delay theo giây.
{type: "numericText"}Thuộc tính chung
width?number | "auto" | "fill"Chiều rộng tính bằng point, tự động hoặc lấp đầy khung cha.
100height?number | "auto" | "fill"Chiều cao tính bằng point, tự động hoặc lấp đầy khung cha.
80padding?numberKhoảng đệm nội dung tính bằng point.
0x?numberDịch chuyển hiển thị theo điểm: x sang phải, y xuống dưới; không đổi chỗ trong bố cục.
0y?numberDịch chuyển hiển thị theo điểm: x sang phải, y xuống dưới; không đổi chỗ trong bố cục.
0transform?ViewTransformBiến đổi toàn View không đổi bố cục. Dịch chuyển theo điểm, xoay/nghiêng theo độ, tỷ lệ 1 giữ nguyên, điểm neo 0–1.
{rotation: 0}background?PaintMàu hoặc chuyển màu nền; clear là trong suốt.
"clear"opacity?numberĐộ đục toàn bộ View: 0 trong suốt, 1 đục hoàn toàn.
1cornerRadius?numberBán kính bo góc theo điểm.
0clipped?booleanCắt phần vẽ vượt ra ngoài View.
falseclip?"rectangle" | "ellipse"Hình cắt rectangle hoặc ellipse; Material còn nhận false để tắt.
"rectangle"mask?View | nullView mặt nạ alpha. Căn giữa mà không ảnh hưởng bố cục; null tắt mặt nạ.
<Circle width="fill" height="fill" background="white"/>zIndex?numberThứ tự vẽ giữa các phần tử cùng cấp; giá trị lớn nằm trước.
0blur?numberBán kính làm mờ theo điểm; 0 là tắt.
4innerShadow?DrawingEffectMàu, độ đục, bán kính mờ và độ lệch x/y của hiệu ứng; khoảng cách theo điểm.
{color: HDR("black"), opacity: 0.5, radius: 4, x: 0, y: 2}glow?DrawingEffectMàu, độ đục, bán kính mờ và độ lệch x/y của hiệu ứng; khoảng cách theo điểm.
{color: HDR("cyan"), radius: 8, opacity: 0.8}shadowColor?ColorMàu bóng đổ bên ngoài.
HDR("black")shadowOpacity?numberĐộ đục bóng 0–1; 0 ẩn bóng.
0shadowRadius?numberBán kính làm mờ bóng ngoài theo điểm.
4shadowX?numberĐộ lệch bóng theo điểm: x sang phải, y xuống.
0shadowY?numberĐộ lệch bóng theo điểm: x sang phải, y xuống.
2animations?Animation[]Hoạt ảnh khi thuộc tính đổi. duration/delay theo giây; from/to là đầu cuối; repeat/autoreverse điều khiển lặp, wrap là chu kỳ.
[{property: "opacity", duration: 0.25, curve: "easeInOut"}]key?string | numberĐịnh danh ổn định giữa các phần tử cùng cấp.
Ví dụ kết hợp
function main() {
return (
<VStack width={180} spacing={12}>
<Text width="fill" fontSize={20} lineLimit={2} truncationMode="tail">
CapDrive — a longer instrument title
</Text>
<HStack alignment="firstTextBaseline" spacing={4}>
<Text fontSize={48} monospacedDigits={true}>
78
</Text>
<Text fontSize={14}>km/h</Text>
</HStack>
</VStack>
);
}
Hoạt ảnh
widthheightpaddingxyopacitybackgroundcornerRadiusblurshadowColorshadowOpacityshadowRadiusshadowXshadowYfontSizeletterSpacingminimumScaleFactorcolortransform.translateXtransform.translateYtransform.scaleXtransform.scaleYtransform.rotationtransform.skewXtransform.skewYtransform.anchorXtransform.anchorYKhi bỏ qua
Bảng ghi hành vi bỏ qua đã kiểm tra từ triển khai; ví dụ không phải mặc định. Muốn kết quả cố định hãy truyền giá trị rõ, kích thước và màu theo ngữ cảnh không phải hằng số.
| Thuộc tính | Khi bỏ qua |
|---|---|
fontSize | 14 |
fontWeight | "regular" |
font | "default" |
monospacedDigits | true |
minimumScaleFactor | 1 |
lineLimit | null |
alignment | "center" |
truncationMode | "tail" |
color | HDR($env.foreground) |