.3 Kết quả liên kết code dạng hành vi (Action) của đối tượng

Một phần của tài liệu Giáo trình lập trình di động trên iOS Dành cho bậc Cao đẳng (Trang 65 - 67)

58

Nếu ở mục Connection chúng ta lựa chọn Outlet thay vì Action thì liên kết code dạng tham chiếu sẽ được tạo. Khi đó, ta có thể dùng biến tham chiếu này để truy xuất các đối tượng trên layout như một biến tham chiếu đến đối tượng bất kỳ.

2.2.2 Cách viết hàm trong iOS với ngôn ngữ Swift

Hàm buttonPress() ở trên được tạo ra sau khi liên kết code dạng hành vi với button 7 có cấu trúc tương tự những hàm được thiết kế trong ngơn ngữ Swift (Chương 1). Tuy nhiên, có một điểm khác biệt đó là chỉ báo biên dịch @IBAction đặt trước từ khoá func của định nghĩa hàm, đó là chỉ báo chỉ ra rằng hàm này có liên kết code với giao diện storyboard của ứng dụng (IB viết tắt của Interface Builder). Còn những hàm, phương thức khác đều được viết theo đúng quy tắc, cú pháp của ngôn ngữ Swift đã được học trong chương 1.

Trước tiên chúng ta muốn hàm thực hiện thao tác đơn giản là hiện giá trị của số tương ứng với nút được chạm vào trên màn hình giao diện (số 7) lên màn hình consol khi chạy chương trình. Để làm việc đó, trong thân hàm ta bổ sung thêm 2 dịng lệnh:

@IBAction func buttonPress(_ sender: UIButton) {

let digit = sender.currentTitle!

print("The button \(digit) duoc nhan!") }

Ở đây, mỗi khi chạy chương trình và chạm vào nút button 7 trên giao diện màn hình máy ảo iPhone, thì hàm kết nối code tương ứng buttonPress(sender:) trong mục 2.2.1 sẽ được gọi và biến sender truyền vào hàm sẽ chính là đối tượng button 7 được chạm vào. Khi đó biến digit = sender.currentTiltle! sẽ chính là giá trị số 7 dưới dạng String (Vì nó là biến Optional nên cần phải unWrap nó bằng !). Kết quả, trên màn hình consol sẽ hiện lên dịng: “The button 7 duoc nhan!”.

Thực hiện copy nút button 7 và dán vào giao diện và sửa đổi tiêu đề của chúng để có màn hình giao diện như dưới đây (Hình 2.2.2.1).

Trong iOS, các đối tượng trong layout khi được copy sẽ copy cả những thuộc tính liên kết code tương ứng của đối tượng đó. Trong ví dụ này, tất cả 10 button trên giao diện giờ đây đều tham chiếu đến cùng hàm buttonPress(sender:) ở trên. Hãy chạy chương trình với Simulator là iPhone 8 Plus, tap chọn các button trên giao diện và cho kết luận!

2.2.3 Hoàn thiện ứng dụng Calculate giai đoạn 1

Giai đoạn 1 của ứng dụng cần xử lý nhiều thao tác như mỗi khi tap trên một đối tượng button cụ thể thì thay vì hiện kết quả trên màn hình consol của Xcode thì giá trị số được chạm sẽ hiện trên màn hình kết quả của máy tính; xử lý các trường hợp số khơng đầu tiên, xử lý các phím chức năng…

Trước tiên chúng ta đưa kết quả của các phím số lên màn hình của ứng dụng Calculator: Thực hiện kết nối màn hình Calculator UILabel với code theo dạng tham chiếu và đặt tên là calDisplay.

Bước 1: Hãy sửa hàm buttonPess(sender:) sao cho mỗi khi một button được chạm vào thì giá trị số tương ứng được ghi dồn vào màn hình của Calculator như sau:

Một phần của tài liệu Giáo trình lập trình di động trên iOS Dành cho bậc Cao đẳng (Trang 65 - 67)

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

(137 trang)