Trạng thái được lấy tiêu điểm cung cấp một tín hiệu trực quan rõ ràng để giúp người dùng hiểu được phần tử nào trên giao diện người dùng hiện đang giữ tâm điểm nhập. Theo mặc định, tất cả các thành phần tương tác trong Material 3 đều cung cấp chỉ báo tiêu điểm tích hợp sẵn.
Chỉ báo tiêu điểm của giao diện Material
Các thành phần Material sử dụng hàm ripple và LocalIndication để vẽ các thay đổi về trạng thái trực quan.
Cách đính kèm phản hồi tiêu điểm Material tiêu chuẩn vào một thành phần tuỳ chỉnh:
- Tạo
MutableInteractionSourcebằngremember { MutableInteractionSource() }. - Truyền nguồn tương tác vào đối tượng sửa đổi
indication, cùng vớiripple().
val interactionSource = remember { MutableInteractionSource() } Box( modifier = Modifier .clickable( interactionSource = interactionSource, indication = null ) { /* onClick */ } .indication( interactionSource = interactionSource, indication = ripple() ) ) { Text("Custom component with Material ripple") }
Triển khai chỉ báo lấy tiêu điểm tuỳ chỉnh
Đối với các tín hiệu trực quan tuỳ chỉnh (chẳng hạn như hiệu ứng thu phóng, đường viền hoặc toả sáng):
- Tạo một
IndicationNodeFactory. - Quan sát các lượt tương tác tiêu điểm do
InteractionSourcecủa phần tử phát ra. - Áp dụng chỉ báo tuỳ chỉnh bằng đối tượng sửa đổi
indication.
var interactionSource = remember { MutableInteractionSource() } Card( modifier = Modifier .clickable( interactionSource = interactionSource, indication = MyHighlightIndication, enabled = true, onClick = { } ) ) { Text("hello") }
Đề xuất cho bạn
- Lưu ý: văn bản có đường liên kết sẽ hiện khi JavaScript tắt
- Mục tiêu lấy tiêu điểm
- Thứ tự duyệt qua tiêu điểm
- Thể hiện cảm xúc với tiêu điểm