Advertisements
YellowCode.Books

Android Bài 32: Hiển Thị Fragment

Như vậy, kết thúc bài học hôm trước, chúng ta đã có trong tay hai Fragment. Fragment thứ nhất có tên FirstFragment đang hiển thị hai Button. Fragment thứ hai dĩ nhiên là có tên SecondFragment rồi, Fragment này đang chứa một TextView sẽ hiện thị nội dung nào đó tùy theo user sẽ nhấn Button nào ở FirstFragment.

Bài học tiếp theo này chúng ta sẽ tìm cách hiển thị hai Fragment này lên Activity, và thực hiện truyền thông tin qua lại giữa chúng nữa. Bạn sẽ thấy rằng, sử dụng Fragment không khó như bạn nghĩ đâu.

Nào hãy cùng mình xem và thực hành từng bước thông qua các kiến thức của bài học hôm nay nhé.

Android Bài 31: Tiếp Tục Làm Quen Với Fragment

Thông qua bài mở màn về Fragment hôm trước, bạn đã biết được Fragment là gì, tại sao phải dùng đến Fragment, và đã biết cách tạo một Frament như thế nào.

Sang bài học hôm nay, mình dự định sẽ nói về các cách để hiển thị Fragment lên Activity một cách linh động như đã hứa. Nhưng thiết nghĩ với việc tiếp cận “sơ sài” với các dòng code của FirstFragment hôm trước, thì sẽ rất khó để có thể vận dụng vào Activity của bài này. Và còn SecondFragment vẫn chưa được tạo nữa chứ. Thế nên mình quyết định sẽ dành thêm một bài nữa để nói rõ về các dòng code quan trọng khi bạn tạo mới các Fragment theo wizard ở bài trước. Đó là các dòng code được phát sinh theo hai check chọn Include fragment factory methods? và Include interface callbacks?.

Android Bài 30: Làm Quen Với Fragment

Như vậy, đến bài học hôm nay, bạn đã biết rõ khái niệm về Activity trong Android rồi. Bạn đều biết, Activity chính là thành phần được dùng để tổ chức một màn hình trong ứng dụng. Tất nhiên rằng, các thiết bị phần cứng ở những giai đoạn đầu của Android đều có màn hình khá nhỏ và chật chội, nên một Activity khi này đủ mạnh để quản lý một màn hình. Nhưng đời không như mơ, khi mà nhu cầu sử dụng các thiết bị với màn hình lớn ngày càng tăng, không những các tablet mới có màn hình lớn, mà ngay cả các thiết bị được gọi là phone ngày xưa cũng tăng kích thước màn hình lên để trở thành các phaplet (lai tạp giữa phone và tablet). Việc tăng kích thước màn hình trên các thiết bị Android như thế ít nhiều làm tăng thêm “gánh nặng” cho Activity, khiến việc thiết kế UI sao cho vừa có thể chạy tốt trên phone và tablet lẫn phaplet bỗng trở nên khó khăn hơn bao giờ hết cho các lập trình viên chúng ta. Chính vì vậy mà Fragment đã được Google giới thiệu ra nhằm “giảm tải” cái gánh nặng đó.

Qua lời “dẫn truyện” trên đây, bạn đã phần nào hiểu được vai trò của Fragment rồi đúng không nào. Hãy cùng mình xem tiếp các mục bên dưới để có cái nhìn đầy đủ hơn về Fragment này nhé.

Android Studio 3.0 Có Gì Mới?

Đến hẹn lại lên. Phiên bản mới nhất, với những cập nhật CHẤT nhất của Android Studio đã chính thức được xuất xưởng và được thông báo qua sự kiện Google I/O 2017 hồi tháng 10 vừa qua. Như vậy, các lập trình viên chúng ta đã phải chờ đợi trong khoảng 7 tháng kể từ phiên bản trước đó là Android Studio 2.3.

Phiên bản mới Android Studio 3.0 này ngoài việc nâng cấp hiệu suất trong việc build ứng dụng ra, nó còn chứa đựng sự cập nhật đối với ba vấn đề lớn, như việc bổ sung các công cụ chẩn đoán hiệu suất ứng dụng, hỗ trợ chính thức ngôn ngữ Kotlin, và hỗ trợ bộ công cụ giúp bạn tăng tốc độ tương thích của các ứng dụng với Android Oreo (Android 8.0).

Java Bài 34: Lớp Lồng

Đọc đến tiêu đề chắc hẳn bạn đã biết nội dung mà bài học hướng đến rồi. Đó chính là kiến thức về việc khai báo một lớp ở bên trong một lớp khác. Đây không phải là quan hệ cha-con gì nhé, do đó nó không phải là kế thừa, nó chỉ là một lớp được khai báo bên trong lớp khác mà thôi. Vậy chúng ta cùng nhau tìm hiểu xem việc lồng các lớp vào với nhau là gì và tại sao lại làm như vậy nhé.

Android Bài 29: Truyền Dữ Liệu Qua Lại Giữa Các Activity

Cho đến bài học hôm nay, chắc hẳn các bạn đã rất tự tin với việc thao tác với Activity rồi. Tuy nhiên Activity vẫn còn nhiều điều hay ho khác mà bạn vẫn nên biết. Một trong những điều đó chính là việc làm thế nào mà các Activity có thể “nói chuyện” được với nhau, hay nói cách khác là truyền dữ liệu cho nhau.

Nếu bạn là người mới tiếp cận Android, ngay lúc này đây, có thể bạn vẫn chưa thấy được nhu cầu từ việc truyền dữ liệu qua lại giữa các Activity. Nhưng tin mình đi, mình và những bạn có kinh nghiệm khác đều đã gặp phải nhu cầu này khá sớm. Ngay cả TourNote cũng cần phải xây dựng chức năng truyền dữ liệu qua lại giữa hai Activity rồi đấy. Nếu thấy thú vị thì mời các bạn cùng xem tiếp bài học nhé.

Android Bài 28: Vòng Đời Activity

Qua bài học hôm trước, bạn đã thấy mình cố gắng trình bày các kịch bản mà các Activity, hay chính là các màn hình, được hệ thống quản lý như thế nào. Qua đó bạn cũng đã biết khi nào một màn hình vẫn còn được giữ lại trong hệ thống để phòng trường hợp người dùng bất ngờ quay lại. Hoặc khi nào thì hệ thống hủy đi một màn hình.

Bài học hôm nay chúng ta sẽ chỉ xem xét khía cạnh đời sống của duy nhất một màn hình. Để xem dưới sự tác động bởi hệ thống, thì các trạng thái của em nó sẽ phải trải qua là gì. Và với mỗi trạng thái như vậy bạn sẽ biết cách tác động đến ứng dụng để thực hiện một số tác vụ thích hợp nhất theo từng trạng thái như thế nào.

Nghe qua có vẻ hay đúng không. Mời các bạn cùng đến với bài học Android tiếp theo này.

Java Bài 33: Interface

Vâng, hôm nay chúng ta sẽ nói về interface. Nhưng bạn hãy dừng việc tưởng tượng rằng chúng ta đang nói đến việc làm sao xây dựng một giao diện cho ứng dụng Java. Tuy interface có nghĩa là giao diện, nhưng giao diện mà bạn đang nghĩ tới thì người ta gọi là UI cơ.

Vậy interface là gì nếu nó không phải là giao diện? Mời bạn đọc tiếp bài học hôm nay. Trước hết, để có thể hiểu bài viết về interface này, bạn nhất định phải đọc và hiểu khái niệm trừu tượng (abstraction) là gì trước.

Vì kiến thức về interface khá nhiều, mình cũng không chắc có thể nói hết tất cả các vấn đề của interface vào một bài viết hay không. Mình sẽ cố gắng trình bày nhiều nhất và rõ ràng nhất có thể, để bạn nắm được khái niệm và cách khai báo, sau này khi bạn bước qua lập trình ứng dụng Android, bạn sẽ hiểu rõ hơn về công dụng thực tế của interface.

ConstraintLayout – Phần 2: Các Chức Năng Nâng Cao

Như mình có nói ở phần 1, ConstraintLayout tuy dài (bị tách ra làm hai phần lận), nhưng nó không khó. Qua bài viết đó bạn đã nắm được ý nghĩa và cách sử dụng các công cụ cơ bản nhất mà Android Studio cung cấp để thiết kế kéo-thả cho layout mới mẻ này. Phần tiếp theo này bạn sẽ biết thêm các chức năng hay ho khác của ConstraintLayout, giúp bạn có thể thiết kế được tất cả các layout mà bạn muốn.

Và chắc chắn chúng ta sẽ cùng nhau thử thực hành xây dựng một layout hoàn thiện ở cuối bài hôm nay.

ConstraintLayout – Phần 1: Tìm Hiểu Các Thành Phần Cơ Bản

Cũng khá lâu rồi, mình luôn mong muốn được viết bài hoàn chỉnh về ConstraintLayout. Nhưng có nhiều điều khiến dự định này dang dở. Một phần cũng vì nếu như không có nó (ConstraintLayout) chúng ta cũng vẫn cứ sống thoải mái vui vẻ mà thôi. Phần nữa là vì bài viết sẽ cần rất nhiều ảnh động, đúng đặc thù của loại layout này, nên “tiến độ dự án” bị kéo dài ra.

Cho đến hôm nay thì kiến thức về ConstraintLayout đã trở nên khá nhiều (nhưng không khó). Sở dĩ kiến thức này nhiều là vì chúng ngày càng được bổ sung các tính năng hữu ích để lập trình viên chúng ta có thể vận dụng một cách linh hoạt nhất vào việc thiết kế các giao diện phức tạp. Và cũng vì kiến thức này nhiều quá nên mình tách ra làm hai phần. Điều này giúp cho các bạn dễ tiếp cận hơn, và mỗi bài cũng không chứa quá nhiều resource ảnh (cả động lẫn tĩnh), có thể ảnh hưởng đến hiệu quả load trang của chúng ta.