Tổng hợp tài liệu, ebook Kỹ Thuật Lập Trình tham khảo.
Layout của Activity2 tương tự như Activity1, nhưng Button bây giờ là để gọi BroadCast Receiver. Ngoài ra mình dùng EditText để hiển thị value nhận được (do nó có cái đường bao ngoài đẹp hơn TextView ^_^) nên không cho phép nhập giá trị vào EditText này
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 625 | Lượt tải: 0
Layout cho Activity1 bao gồm 1 LinearLayout chứa 1 TextView, 1 EditText để nhập giá trị (đã giới hạn kiểu nhập là number), và 1 RelativeLayout có 1 Button để khởi chạy Activity2. Mình sử dụng RelaytiveLayout để có thể xếp Button này xuống phía cuối của giao diện.
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 669 | Lượt tải: 0
Các bạn có thể lưu ý là thay vì sử dụng ArrayList
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 717 | Lượt tải: 0
ListWorkAdapter sẽ được sử dụng thay thế cho ArrayAdapter được bind với ListView. Thông thường ArrayAdapter chỉ cho hiển thị String bằng TextView, nhưng với việc kế thừa và override phương thức getView, ta có thể định nghĩa lại hiển thị cho các thành phần của ListView.
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 683 | Lượt tải: 0
Custom ViewGroup của chúng ta ở đây khá đơn giản, đó là 1 LinearLayout chứa 2 thành phần: 1 CheckBox và 1 LinearLayout khác gồm 2 TextView để hiển thị nội dung công việc và thời gian. B3: Đã xong giao diện cho custom ViewGroup, chúng ta sẽ thiết kế giao diện cho chương trình trong main.xml. Ở đây mình dùng lại giao diện của Example 2 trong bài...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 641 | Lượt tải: 0
Tiếp theo là android.R.layout.simple_list_item_1, đối này định nghĩa cách thể hiện item (ở đây là String) trong List View. Các bạn hãy ghi nhớ android.R.* là các tài nguyên (resource) có sẵn của Android cho phép bạn truy cập và sử dụng. Sau này khi hướng dẫn tạo custom View cho List View mình sẽ đề cập lại vấn đề này. Cuối cùng arrayWork chính ...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 651 | Lượt tải: 0
Ok, giờ đến 1 chút kiến thức về các đơn vị của dimenson: - px (pixel): điểm chấm trên màn hình. - in (inch) - mm (milimet) - pt (point) = 1/72 m - dp (density - independent pixel): cái này hơi khó giải thích. Nói chung dp được sử dụng cho nhiều độ phân giải, và với độ phân giải 160 px/inch thì 1 dp = 1 px. - sp: gần giống dp, nên sử dụng cho...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 712 | Lượt tải: 0
Giao diện ta thiết kế ở đây có 1 Linear Layout làm thành phần chính, các thành phần con của nó gồm 1 Edit Text (dùng để nhập nội dung công việc), 1 Linear Layout (lại gồm các thành phần con để nhập giờ và phút thực hiện công việc), 1 Button (để thêm nội dung công việc vào List View) và 1 List View dùng để list các công việc bạn đã nhập. Từ khó...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 649 | Lượt tải: 0
Understanding Android Application Life Cycle: Android có cơ chế quản lý các process theo chế độ ưu tiên. Các process có priority thấp sẽ bị Android giải phóng mà không hề cảnh báo nhằm đảm bảo tài nguyên. 1.Foreground process: là process của ứng dụng hiện thời đang được người dùng tương tác. 2.Visible process: là process của ứng dụng mà activi...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 707 | Lượt tải: 0
OK, vậy là bạn đã tạo một màu mới cho dòng chữ sẽ được hiển thị trong Text View (ff3300 là mã hexa của màu đỏ). Thực chất bạn hoàn toàn có thể gõ thẳng Mã: android:textColor="#ff3300" trong file main.xml mà không cần tạo mới file colors.xml, nhưng mục đích của XML trong Android chính là để hỗ trợ nâng cấp chỉnh sửa dễ dàng. Nếu sau này bạn mu...
5 trang | Chia sẻ: dntpro1256 | Ngày: 23/11/2020 | Lượt xem: 619 | Lượt tải: 0