0
0
Lập trình
Sơn Tùng Lê
Sơn Tùng Lê103931498422911686980

Sử Dụng Gauge Để Xây Dựng Đồng Hồ Hiển Thị Trong HarmonyOS

Đăng vào 7 tháng trước

• 5 phút đọc

Chủ đề:

KungFuTech

📘 Giới Thiệu

Bạn có biết rằng việc hình dung tiến trình một cách rõ ràng và hiệu quả trên các màn hình nhỏ như smartwatch hoặc bảng điều khiển là rất quan trọng không? HarmonyOS đã cung cấp một giải pháp tuyệt vời: thành phần Gauge.

Dù bạn đang phát triển một ứng dụng thể dục để hiển thị số bước, đồng hồ pin, hay theo dõi mục tiêu, Gauge cho phép bạn trình bày các giá trị phần trăm theo định dạng vòng cung thanh lịch. Nó cũng hỗ trợ tùy chỉnh về màu sắc, hướng, kích thước và nội dung ở giữa.

Trong bài viết này, bạn sẽ tìm hiểu:

  • Cách Gauge hoạt động trong HarmonyOS Next
  • Cách cấu hình và tùy chỉnh nó với ArkTS
  • Ví dụ sử dụng thực tế
  • Mẹo để đảm bảo trải nghiệm người dùng tốt nhất

🧩 Gauge Là Gì?

Thành phần Gauge là một phần của ArkUI, được thiết kế để hình dung các giá trị bằng cách sử dụng một vòng cung. Nó rất lý tưởng cho các giao diện người dùng trên thiết bị đeo hoặc bảng điều khiển, nơi không gian hạn chế nhưng độ rõ ràng trực quan là rất quan trọng.

Khả Năng Chính:

  • Đại diện hình ảnh cho các giá trị dựa trên phần trăm
  • Góc bắt đầu và kết thúc tùy chỉnh
  • Vòng cung nền và vòng cung trước
  • Hỗ trợ màu sắc gradient
  • Tùy chỉnh bóng cho chiều sâu
  • Nội dung tùy chỉnh bên trong gauge (văn bản, biểu tượng, v.v.)

⚙️ Các Thuộc Tính và Tùy Chọn Chính

📍 Các Thuộc Tính Chính Của Gauge

  • value: Giá trị hiện tại của gauge (0-100).
  • min: Giá trị tối thiểu.
  • max: Giá trị tối đa.

⚙️ Các Trường GaugeOptions

  • startAngle: Góc bắt đầu của vòng cung.
  • endAngle: Góc kết thúc của vòng cung.
  • colors: Màu sắc của vòng cung.
  • strokeWidth: Độ dày của vòng cung.
  • padding: Khoảng cách giữa gauge và các cạnh.

🧪 Ví Dụ Sử Dụng

Dưới đây là một ví dụ đơn giản sử dụng Gauge để hiển thị giá trị 90%, được căn giữa với văn bản lớn và vòng cung gradient:

typescript Copy
@Entry
@Component
struct Index {
  build() {
    Column() {
      Gauge({ value: 90, min: 1, max: 100 }) {
        Column() {
          Text('90')
            .fontSize(60)
            .fontColor(Color.White)
            .fontWeight(FontWeight.Medium)
            .textAlign(TextAlign.Center)
            .width('100%')
            .height('100%')
            .textAlign(TextAlign.Center)
            .textOverflow({ overflow: TextOverflow.Ellipsis })
            .maxLines(1)
        }
        .width('100%')
        .height('100%')
      }
      .startAngle(225)
      .endAngle(135)
      .colors(new LinearGradient([
        { color: "#e84026", offset: 0 },
        { color: "#f7ce00", offset: 0.6 },
        { color: "#64bb5c", offset: 1 }
      ]))
      .width('96%')
      .height('96%')
      .strokeWidth(18)
      .padding(10)
    }
    .width('100%')
    .height('100%')
  }
}

🧠 Mẹo và Thủ Thuật

1. Sử Dụng góc một cách khôn ngoan
Đối với thiết kế bán vòng tròn, hãy sử dụng startAngle: 225endAngle: 135.

2. Giữ nội dung trung tâm tối giản
Hãy giữ lại những con số ngắn hoặc biểu tượng để đảm bảo rõ ràng, đặc biệt trên các màn hình nhỏ.

3. Sử dụng màu gradient để cải thiện UX
Vòng cung gradient thu hút sự chú ý và truyền tải chuyển động hoặc hoàn thành một cách trực quan hơn.

4. Thêm bóng cho chiều sâu trực quan
Sử dụng .trackShadow() để tăng cường sự xuất hiện 3D.

5. Giữ trong phạm vi hợp lệ
value cần nằm trong khoảng từ 0 đến 100. Gauge được thiết kế cho dữ liệu dựa trên phần trăm.

6. Đừng quên hiệu suất
Tránh lạm dụng các hiệu ứng như gradient trên các thiết bị cấu hình thấp.

7. Điều chỉnh độ dày vòng cung dựa trên ngữ cảnh
Vòng cung mỏng mang lại cảm giác nhẹ nhàng, vòng cung dày tạo cảm giác mạnh mẽ. Cân bằng trọng lượng trực quan với nội dung.

📦 Ý Tưởng Sử Dụng

Thành phần Gauge phù hợp với nhiều kịch bản ứng dụng:

  • Theo Dõi Thể Dục → Hiển thị tiến trình mục tiêu số bước hoặc calo của người dùng
  • Ứng Dụng Học Tập → Hiển thị phần trăm hoàn thành khóa học hoặc bài học
  • Giám Sát Pin → Hiển thị mức pin hiện tại
  • Theo Dõi Mục Tiêu → Hình dung tiến trình hoàn thành nhiệm vụ
  • Theo Dõi Cung Cấp Nước → Theo dõi lượng nước hàng ngày
  • Giám Sát Hệ Thống → Hiển thị tải CPU hoặc bộ nhớ
  • Ứng Dụng Xe Thông Minh → Hình dung áp suất lốp hoặc trạng thái nhiên liệu

✅ Kết Luận

Gauge là một trong những công cụ UI hiệu quả nhất để hình dung tiến trình trong các ứng dụng HarmonyOS. Nó kết hợp tính linh hoạt, độ rõ ràng và thiết kế hiện đại — làm cho nó hoàn hảo cho các giao diện hình tròn trên smartwatch và bảng điều khiển.

Với ArkTS và Gauge, bạn có thể cung cấp phản hồi người dùng thanh lịch vừa chức năng vừa đẹp mắt.

👉 Trong bài viết tiếp theo, chúng ta sẽ kết hợp GaugeArcButton để xây dựng một Máy Tính BMI cho HarmonyOS — một ví dụ tuyệt vời về cách những thành phần này hoạt động cùng nhau trong các ứng dụng thực tế.

Hãy thử thêm Gauge vào dự án tiếp theo của bạn và để người dùng thấy tiến trình của họ — một cách hình ảnh.

📚 Tài Nguyên Tham Khảo

Gauge

Tác giả: Sefa Koyuncu

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào