Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (39.29 MB, 420 trang )
5.1 ĐỐI TƯỢNG LABEL – BUTTON – TEXT FIELD
5.1.1 Giới Thiệu
5.1.1.1 Đối Tượng Label
Label dùng để hiển thị một nội dung là chữ/câu/đoạn văn có tính cố định ít thay đổi.
Hình 5.1 Label
Label cho phép người dùng thay đổi một số thuộc tính để hiển thị nội dung ra giao
diện cho phù hợp như tùy chỉnh màu chữ, font và kích thước, canh trái/giữa/phải hay cho
nội dung của label xuống dòng.
Hình 5.2 Thuộc tính của Label
87
5.1.1.2 Đối Tượng Button
Button có thể được thiết kế hiển thị chữ hoặc hiển thị theo hình ảnh, thường được sử
dụng để người dùng tương tác với ứng dụng nhằm tạo ra một sự kiện nào đó của ứng
dụng. Chẳng hạn bạn nhập tên của bạn vào text field, bạn muốn khi người dùng chạm vào
button sẽ hiện tên bạn ra màn hình.Lúc này button sẽ được thiết kế để nắm bắt sự kiện khi
người dùng chạm vào, và thực hiện chức năng hiển thị tên bạn ra màn hình.
Hình 5.3 Button
Với button, bạn có thể lựa chọn một số định dạng button có sẵn, hoặc tùy chọn một
dạng button khác theo ý bạn. Không những thế bạn còn có thể tùy chỉnh font chữ, màu
chữ, màu nền của button hoặc thay thế button theo mộ hình ảnh button được thiết kế
trước.
88
Hình 5.4 Thuộc tính của Button
5.1.1.3 Đối Tượng Text Field
Đối tượng Text field thường được sử dụng để người dùng nhập dữ liệu đầu vào cho
ứng dụng. Chẳng hạn như bạn viết chương trình tính tổng hai số, thì bạn sẽ dùng Text
field để người dùng nhập vào hai số cần tính tổng, và bạn sẽ sử dụng giá trị nhập vào của
Text field để tính toán và hiển thị kết quả cho người dùng.
Hình 5.5 Text Field
Text field cho phép tùy chỉnh canh lề trái/giữa/phải, tùy chỉnh font chữ và kích
thước chữ trong Text field. Hơn nữa, bạn có thể tùy chỉnh hình dạng của Text field, cũng
như định dạng nội dung gợi ý cho người dùng (placeholder).
89
Hình 5.6 Thuộc tính của Text Field
5.1.2 Ví Dụ
Trong phần ví dụ này sẽ hướng dẫn các bạn viết một ứng dụng nhỏ để hiển thị tên
của bạn ra màn hình. Ứng dụng sẽ có một label, một button, một text field. Bạn sẽ nhập
tên bạn vào text field, sau đó chạm vào button, label sẽ hiển thị nội dung mà bạn đã nhập
vào text field trước đó.
- Tạo ứng dụng có tên là Label-Button-TextField.
- Thiết kế giao diện cho ứng dụng gồm một lable, một button, một text field.
- Ánh xạ các đối tượng vào tập tin .h.
- Viết code cho sự kiện khi người dùng chạm vào button.
Bước 1: Tạo project mới.
90
Hình 5.7 Tạo New Project
Hình 5.8 Chọn nơi lưu project
91
Bước 2: thiết kế giao diện
Hình 5.9 thiết kế giao diện
Bước 3: ánh xạ đối tượng.
Hình 5.10 ánh xạ đối tượng
92
Hình 5.11 ánh xạ đối tượng (tt)
Bước 4: viết code cho button.
Hình 5.12 viết code cho button
Bước 5: chạy thử
93
Hình 5.13 chạy thử ứng dụng
5.2 KẾT NỐI CƠ SỞ DỮ LIỆU VỚI SQLITE
5.2.1 Giới Thiệu
SQLite là một hệ quản trị cơ sở dữ liệu có thể chạy hoàn toàn độc lập mà không cần
đến server. SQLite thường được người lập trình sử dụng để lưu trữ cơ sở dữ liệu khi viết
ứng dụng cho các thiết bị của Apple. Các lệnh truy vấn trên SQLite sử dụng các lệnh truy
vấn của SQL (ví dụ SELECT, UPDATE, CREATE…). Việc quản lý SQLite rất đơn giản,
bạn chỉ cần quản lý thông qua một plugin của FireFox là SQLite Manager.Bạn có thể tìm
hiểu thêm tại http://www.sqlite.org.
5.2.2 Cài Đặt Sqlite Manager Cho Firefox
Để cài đặt plugin quản lý SQLite cho Firefox, bạn vào phần Addon của trình duyệt
Firefox và tìm plugin SQLite Manager rồi Add to Firefox.
94
Hình 5.14 Addon SQLite
Sau khi cài đặt xong, trong phần Tool bạn sẽ thấy như hình.
Hình 5.15 SQLite Manager trong Tool
5.2.3 Cấu Hình Ứng Dụng Để Tương Tác Với Sqlite
Để ứng dụng có thể thao tác với cơ sở dữ liệu của SQLite, bạn cần bổ sung thêm thư
viện hỗ trợ vào project. Trong phần Build Phase, mục Link to Library, bạn thêm vào thư
viện libsqlite3.dylib vào project.
Hình 5.16 Thêm framework hỗ trợ SQLite
95
5.2.4 Các Hàm Trong Sqlite
Trong SQLite có một số hàm cơ bản cho phép bạn tương tác dễ dàng với cơ sở dữ
liệu.
- sqlite3_open(): mở một kết nối đến tập tin sqlite. Nếu tập tin này chưa có, hệ
thống sẽ tự động tạo ra.
- sqlite3_close(): đóng kết nối đến sqlite.
- sqlite3_prepare_v2(): khởi tạo câu lệnh truy vấn SQL để thực thi.
- sqlite3_step(): thực thi lệnh truy vấn được tạo bởi hàm sqlite3_prepare_v2().
- sqlite3_column_
dữ liệu được khai báo trong
- sqlite3_finallize(): xoá câu lệnh truy vấn SQL được khởi tạo bởi hàm
sqlite3_prepare_v2() trong bộ nhớ.
Bạn có thể tham khảo thêm một số hàm khác tại: www.sqlite.org/c3ref/funclist.html
5.2.4.1 Khởi Tạo Đối Tượng Sqlite
Trước khi tương tác với cơ sở dữ liệu SQLite, bạn cần phải tạo đối tượng dạng này
bằng cách khai báo một biến có kiểu sqlite3 trong tập tin .h.
Hình 5.17 Khai báo sqlite3
5.2.4.2 Kết Nối Hoặc Tạo Database
Dùng hàm sqlite3_open() để mở kết nối đến cơ sở dữ liệu sqlite.
Hình 5.18 Hàm sqlite3_open
Nếu tập tin này chưa có thì sẽ tự động được tạo.
96
Filename: là đường dẫn đến tập tin sqlite. Nếu tên database có dấu tiếng việt thì cần
chuẩn hoá lại theo dạng UTF-8 trước khi truyền vào.
Sử dụng biến SQLITE_OK để kiểm tra trạng thái trả về của việc mở kết nối đến
database có thành công hay không.
5.2.4.3 Khởi Tạo Và Thực Thi Lệnh Truy Vấn
Câu lệnh truy vấn được khởi tạo và lưu trữ vào đối tượng sqlite_stmt() và truyền vào
hàm sqlite_prepare_v2() để thực thi.
Hình 5.19 khai báo đối tượng sqlite_stmt
Hình 5.20 Thực thi đối tượng sqlite_stmt trong sqlite3_prepare_v2
Câu lệnh SQL được thực hiện bởi các lệnh sau:
Hình 5.21Thực hiện câu lệnh SQL lấy kết quả trả về
97