Đối Tượng ProgressView

Một phần của tài liệu Xây dựng công cụ cho phép thiết kế ứng dụng SCADA vừa và nhỏ trên nền iOS (Trang 82 - 84)

5.5 Màn Hình Runtime

5.5.8 Đối Tượng ProgressView

Progress view cho phép người sử dụng quan sát được giá trị các các biến một cách trực quan. Khi giá trị biến thay đổi, tị lệ giữa phần 2 phần màu khác nhau trong thanh Progress View thay đổi theo.

Hình 5-30 Giao diện ProgressView Các bước thực hiện với Progress View.

Bước 1: : Đầu tiên cần tạo Class để đưa vào cho đối tượng các thuộc tính mong muốn mà thư viện chuẩn chưa có. Ví dụ như là TagAssign, Decription ..v..v

@property (retain, nonatomic) NSString *tagAssign;

@property (retain, nonatomic) NSString *device;

@property (strong, nonatomic) NSString *decription;

@property (retain, nonatomic) NSString *maximumValue;

Page 73

Trong đó đối tượng ngoài có các thuộc tính mặc định của xcode hỗ trợ thì nay có thêm thuộc tính tagAssign và decription phục vụ cho nhu cầu viết code. Thuộc tính maximumValue để người dụng xác định được giá trị max của thang đo, kết hợp với giá trị của biến đọc lên từ Modbus tính ra được tỉ lệ để thay đổi ProgressView.

progressInProcess.progress =

tagXML.value.floatValue/progressInProcess.maximumValue.floatValue;

Các hàm Init trong file .m phục vụ cho việc khởi tạo một đối tượng mới với các thông số khởi tạo mong muốn.

Lưu ý ProgressView tạo ra tự động nằm theo chiều ngang, do vậy khi ta muốn thay đổi theo chiều dọc cần viết thêm code cho đối tượng ProgressView.

Bước 2: Trong giao diện Runtime ta cũng tạo ra 1 ProgressView sẵn làm một tool khi click vào nó sẽ tạo ra được các đối tượng ProgressView. Cách làm cũng tương tư như cách tạo ở trên.

Bước 3: : Cho phép người dùng thay đổi thuộc tính của đối tượng đã tạo ra.

Trước hết cần phải có giao diện để phục vụ cho việc thay đổi này. Như vậy ta cần tạo 1 giao diện phụ (theo kiêu UIViewController) để tạo Pop-up khi chạm vào đối tượng, trên đó sẽ có đầy đủ các thuộc tính cần thay đổi của đối tượng. Cách tạo đã được hướng dẫn ở trên.

CGAffineTransform transform = CGAffineTransformMakeRotation(3*M_PI/2); transform = CGAffineTransformScale(transform, 1, 3);

Page 74

Hình 5-31 Giao diện thiết kế ProgressView

Một phần của tài liệu Xây dựng công cụ cho phép thiết kế ứng dụng SCADA vừa và nhỏ trên nền iOS (Trang 82 - 84)

Tải bản đầy đủ (PDF)

(145 trang)