Giao diện người sử dụng trong KUIX, được phát triển dựa vào 3 tính chất chính: • Hướng bố cục (layout oriented)
• Sử dụng các widget như các phần tửđồ họa
• Có thể được mô tả với ngôn ngữ Java hoặc cách tiếp cận sử dụng XML/stylesheet
Hướng bố cục nghĩa là các phần tửđồ họa được đặt tại những địa điểm được định nghĩa trước thông qua bố cục, điều này giúp cho các ứng dụng sẽ tựđộng phù với các kích thước màn hình khác nhau. Cách tiếp cận này cũng cho phép việc thiết kế giao diện người sử dụng được mô tả bằng các yêu cầu giữa các phần tử và giúp cho hệ thống đồ họa sắp xếp vị trị của chúng tại thời điểm ứng dụng chạy phụ thuộc vào khả năng của các thiết bị.
Các widget là các thành phần giao diện sử dụng có thể được sử dụng lại để xây dựng các màn hình phức tạp hơn. Widgets có thể tùy chỉnh trong mẫu giao diện sử
dụng. Một số widget đặc biệt luôn được định nghĩa và dễ dàng cho vào các ứng dụng bằng phương pháp kế thừa.
Việc mô tả giao diện có thể thực hiện bằng hai cách: XML/CSS hoặc Java. Lợi ích của việc sử dụng cách tiếp cận thứ nhất đó là:
Phân tách giữa việc phát triển ứng dụng và kỹ năng đồ họa
Quá trình xử lý nghiệp vụ, logic sẽđược tách biệt với giao diện đồ họa
Cách thiết kế sử dụng Java sẽđạt được hiệu quả cao hơn, bởi vì nó không đòi hỏi phải quá trình dịch các file XML và các file CSS trong khi chạy ứng dụng, nhưng điều này không cho phép phân tách các kỹ năng trong một đội phát triển.
Với cách tiếp cận bằng XML/CSS, một giao diện có thể được mô tả bởi file XML và được “trang điểm” với các file CSS. Các file XML và CSS này sẽ được đưa vào chương trình thông qua các đoạn mã nguồn Java. Bất cứ điều gì chúng ta có thể làm với XML và CSS, đều có thể làm trực tiếp với mã nguồn Java, nhưng điều này làm cho mã nguồn trở nên kém linh động và khó đọc hơn