Tập hợp hàm và phép tính số học mà các phần tử Định dạng mặt đồng hồ (Watch Face Format) khác sử dụng nhằm phân giải các giá trị thuộc tính theo thời gian thực và hiệu ứng con quay hồi chuyển (gyroscopic).
Ra mắt trong Wear OS 4.
Ví dụ
Biểu thức mẫu để xoay giá trị lên đến 5 độ theo một trong hai hướng, dựa trên giá trị $ x $-value của gia tốc kế trên thiết bị Wear OS:
(5/90)*clamp([ACCELEROMETER_ANGLE_X],0,90) + (-5/90)*clamp([ACCELEROMETER_ANGLE_X],-90,0)
...tương đương với biểu thức toán học sau đây, trong đó $\theta_x $ đại diện cho góc gia tốc kế theo hướng $ x $:
Hàm
Định dạng mặt đồng hồ nhận dạng các giá trị chuỗi dưới dạng hàm:
Chức năng | Mô tả | Loại dữ liệu trả về | Phạm vi cung cấp |
---|---|---|---|
round() |
Chuyển đổi giá trị đầu vào thành giá trị dấu phẩy động, sau đó thực hiện phép chuẩn
Phép toán round() .
|
Số nguyên | Phiên bản 1 |
floor() |
Thực hiện phép toán floor() chuẩn.
|
Nổi | Phiên bản 1 |
ceil() |
Thực hiện phép toán ceil() chuẩn.
|
Nổi | Phiên bản 1 |
fract() |
Trả về phần thập phân của giá trị đầu vào; tức là một phần của giá trị dấu phẩy động xuất hiện ở bên phải dấu thập phân. | Nổi | Phiên bản 1 |
sin() |
Thực hiện phép toán lượng giác sin() chuẩn.
|
Nổi | Phiên bản 1 |
cos() |
Thực hiện phép toán lượng giác cos() chuẩn.
|
Nổi | Phiên bản 1 |
tan() |
Thực hiện phép toán lượng giác tan() chuẩn.
|
Nổi | Phiên bản 1 |
asin() |
Thực hiện phép toán lượng giác asin() chuẩn. Được trả về
luôn nằm trong khoảng $ [-\frac{\pi}{2}, \frac{\pi}{2}] $.
|
Nổi | Phiên bản 1 |
acos() |
Thực hiện phép toán lượng giác acos() chuẩn. Được trả về
luôn nằm trong khoảng $ [0.0, \pi] $.
|
Nổi | Phiên bản 1 |
atan() |
Thực hiện phép toán lượng giác atan() chuẩn. Được trả về
luôn nằm trong khoảng $ [-\frac{\pi}{2}, \frac{\pi}{2}] $.
|
Nổi | Phiên bản 1 |
abs() |
Chuyển đổi giá trị đầu vào thành giá trị dấu phẩy động, sau đó thực hiện phép chuẩn
Phép toán abs() .
|
Nổi | Phiên bản 1 |
clamp(,,) |
Chuyển đổi các giá trị đầu vào thành giá trị dấu phẩy động, sau đó thực hiện phép tính
clamp() Toán tử Jetpack để khớp với giá trị đầu tiên trong dải ô được xác định bằng
giá trị thứ hai và thứ ba.
|
Nổi | Phiên bản 1 |
rand(,) |
Tạo một giá trị dấu phẩy động ngẫu nhiên đáp ứng các điều kiện sau
cùng một lúc:
|
Nổi | Phiên bản 1 |
log() |
Thực hiện phép toán base-$ e $ log() chuẩn.
|
Nổi | Phiên bản 1 |
log2() |
Mô phỏng một lôgarit cơ số 2. Giá trị này được tính bằng cách chia cơ số 10
log() của giá trị đầu vào) theo lôgarit cơ số 10 của $ 2 $.
|
Nổi | Phiên bản 1 |
log10() |
Thực hiện phép toán cơ số 10 log() chuẩn.
|
Nổi | Phiên bản 1 |
sqrt() |
Thực hiện phép toán sqrt() chuẩn.
|
Nổi | Phiên bản 1 |
cbrt() |
Thực hiện phép toán cbrt() chuẩn.
|
Nổi | Phiên bản 1 |
exp() |
Thực hiện phép toán exp() chuẩn.
|
Nổi | Phiên bản 1 |
expm1() |
Gọi trực tiếp toán tử expm1() nếu giá trị đầu vào là $ 1 $. Với mọi giá trị đầu vào khác, hãy mô phỏng hàm bằng cách thực hiện phép toán exp() chuẩn, sau đó trừ đi 1.
|
Nổi | Phiên bản 1 |
deg() |
Thực hiện phép toán toDegrees() chuẩn.
$ \frac{\pi}{2} $ được định nghĩa là 90 độ và $ \pi $ được định nghĩa là 180 độ.
|
Nổi | Phiên bản 1 |
rad() |
Thực hiện phép toán toRadians() chuẩn. 90 độ được định nghĩa là $ \frac{\pi}{2} $ và 180 độ được định nghĩa là $ \pi $.
|
Nổi | Phiên bản 1 |
pow(,) |
Thực hiện phép toán pow() chuẩn. Giá trị đầu ra luôn là số thực.
|
Nổi | Phiên bản 1 |
numberFormat(,) |
Áp dụng định dạng số của giá trị đầu tiên cho giá trị thứ hai. Giá trị đầu tiên có thể chứa các ký tự sau:
|
Chuỗi | Phiên bản 1 |
icuText() |
Chuyển đổi chuỗi định dạng ngày được đưa vào thành một mẫu khớp với định dạng ngôn ngữ dự kiến. Nếu phần tử Ví dụ: nếu thiết bị đang được sử dụng ở Hoa Kỳ thì giá trị nhập
|
Chuỗi | Phiên bản 1 |
icuText(,) |
Chuyển đổi chuỗi định dạng ngày được đưa vào đối số đầu tiên thành một mẫu khớp với định dạng ngôn ngữ dự kiến. Đối số thứ hai là một chuỗi dấu thời gian tính bằng mili giây. Nếu phần tử mẹ |
Chuỗi | Phiên bản 2 |
icuBestText() |
Chuyển đổi chuỗi định dạng ngày được đưa vào thành mẫu thời gian hiện tại khớp với định dạng chuẩn. Nếu phần tử Ví dụ: Nếu thiết bị này đang được sử dụng ở Hoa Kỳ từ ngày 14 tháng 3 năm 2023
lúc 1:59 chiều, giá trị đầu vào là |
Chuỗi | Phiên bản 1 |
icuBestText(,) |
Chuyển đổi đối số đầu tiên chuỗi định dạng ngày được đưa vào thành thời gian hiện tại có mẫu khớp với định dạng dự kiến. Đối số thứ hai là một chuỗi dấu thời gian tính bằng mili giây. Nếu phần tử mẹ |
Chuỗi | Phiên bản 2 |
subText(,,) |
Trích xuất chuỗi con từ giá trị đầu tiên. Giá trị thứ hai chỉ định chỉ số (bắt đầu đếm từ 0) trong giá trị đầu tiên, nơi mà chuỗi con bắt đầu. Giá trị thứ ba chỉ định chỉ số (bắt đầu đếm từ 0) trong giá trị đầu tiên, nơi mà việc trích xuất chuỗi con sẽ kết thúc ("từ giá trị thứ hai cho đến trước giá trị thứ ba"). Ví dụ:
|
Chuỗi | Phiên bản 1 |
textLength() |
Tính toán độ dài của chuỗi nhập. Ví dụ:
|
Chuỗi | Phiên bản 1 |
Toán tử
Định dạng mặt đồng hồ nhận dạng các giá trị chuỗi dưới dạng toán tử:
+
- Cộng một ngôi, hoặc nhiều giá trị. Hỗ trợ cả số nguyên và giá trị dấu phẩy động.
-
- Trừ một ngôi, hoặc trừ nhiều giá trị. Hỗ trợ cả số nguyên và giá trị dấu phẩy động.
*
- Hệ số nhân của nhiều giá trị số nguyên hoặc dấu phẩy động.
/
Phép chia 2 giá trị số nguyên hoặc dấu phẩy động.
Nếu phép chia 2 số nguyên có kết quả không phải là một số nguyên, thì phần thập phân sẽ được giữ nguyên ở kết quả dưới dạng dấu phẩy động. Ví dụ: $ \frac{1}{2} = 0,5 $.
Ngoài ra, biểu thức $ \frac{x}{0} $ được gán kết quả là
0
, trong đó $ x $ là bất kỳ số nguyên nào.%
Phép chia mô-đun của 2 giá trị số nguyên hoặc dấu phẩy động.
Nếu cả hai toán hạng đều là số nguyên, kết quả sẽ là phần dư sau khi chia 2 giá trị đó. Ví dụ: $ 19 \bmod 7 = 5 $.
Nếu ít nhất một toán hạng là một giá trị dấu phẩy động, thì kết quả sẽ là một dấu phẩy động tương đương với số dư; ví dụ: $ 19.0 \bmod 7 = 5,0 $.
~
Toán tử Bitwise "not". Dưới đây là một số ví dụ:
~1
là $ -2 $~0
là $ -1 $
!
Toán tử logic "not" hỗ trợ phủ định kép Dưới đây là một số ví dụ:
- $ !2 $ là
false
- $ !!0 $ là
true
|
Toán tử Bitwise "or". Hỗ trợ nhiều hơn 2 giá trị đầu vào. Dưới đây là một số ví dụ:
- $ 1 | 0 = 1 $
- $ 1 | 2 | 4 = 7 $
||
- Toán tử logic "or".
&
- Toán tử bitwise "or". Hỗ trợ đúng 2 giá trị đầu vào.
&&
- Toán tử logic "and".
(
- Dấu mở ngoặc Dùng để thay đổi thứ tự chuẩn của các phép tính, trong đó phép nhân và phép chia được ưu tiên hơn phép cộng và phép trừ.
)
- Dấu đóng ngoặc Dùng để thay đổi thứ tự chuẩn của các phép tính, trong đó phép nhân và phép chia được ưu tiên hơn phép cộng và phép trừ.
<
- Toán tử so sánh "nhỏ hơn". Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
false
. <=
- Toán tử so sánh "nhỏ hơn hoặc bằng". Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
true
. >
- Toán tử so sánh "lớn hơn". Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
false
. >=
- Toán tử so sánh "lớn hơn hoặc bằng". Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
true
. ?
và:
Hỗ trợ cho các toán tử 3 ngôi. Định dạng chung như sau:
condition ? value_if_true : value_if_false
Hỗ trợ các toán tử 3 ngôi lồng nhau bằng cách sử dụng dấu ngoặc đơn.
,
Tách các giá trị trong những hàm nhận nhiều hơn 1 đối số.
"
Khi đặt ở đầu và cuối của một giá trị, toán tử này định nghĩa Định dạng mặt đồng hồ của một giá trị là một chuỗi.
==
So sánh bằng. Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
true
.!=
So sánh bất đẳng thức. Khi so sánh một giá trị số nguyên với giá trị dấu phẩy động tương đương, kết quả sẽ là
false
.
Đề xuất cho bạn
- Lưu ý: văn bản có đường liên kết sẽ hiện khi JavaScript tắt
- Bố cục và biểu thức liên kết
- Tài liệu tham khảo nhanh về AGSL
- Chương trình đào tạo về Kotlin dành cho lập trình viên 2: Kiến thức cơ bản về Kotlin