.ai co kinh nghiệm cho ình kết bạn để có gì dễ trao đổi
Minh đang học lập trình android chưa hiểu lắm về các Activity.như là ActionBar,Activity....mỗi cái khác nhau những gì
mình mới học Android nên nếu trả lời sai thì mọi người sửa giùm
Theo mình hiểu, cái Activity tương tự như Window hay Frame trong C# hay Java vậy, trên đó bạn có thể add các component như button, label,… Activity đc gọi trong hàm onCreate()
Còn ActionBar nó chỉ là một thành phần nằm trên Activity như button, label thôi, nó giống như ToolsBar trong những phần mềm desktop vậy.
Activity cùng với layout của nó cung cấp một màn hình của ứng dụng có thể tương tác để làm một việc gì đó. Activty dùng để điều khiển các thành phần trên Layout
Bạn đã hỏi thì cố gắng hỏi rõ ràng một chút. Để ba chấm thì chẳng ai muốn trả lời đâu vì không biết trả lời đến bao giờ mới là điểm dừng.
Mình đang nhận thức là bạn có hai câu hỏi đó là Activity là gì? Và phân loại của các Activity?
###Activity là gì?
Với câu hỏi thứ nhất thì đã được ghi rõ ràng trong document của Google, để hiểu về Activity thì bạn cần code nhiều sẽ tự trải nghiệm được không cần phải định nghĩa rõ ràng ngay từ đầu. Activity là một trong bốn thành phân của Android. Đây là class được sinh ra để thực hiện ba nhiệm vụ:
- Chiếm quyền quản lí toàn bộ màn hình ứng dụng hiện hành (Giao tiếp phần cứng, các service của máy, quản lí giao diện, phản hồi lại các action listener…)
- Kết nối tới các tài nguyên của ứng dụng (Các file resource như asset, string, dimen…)
- Quản lí vòng đời của chính nó dẫn đến quản lí được phần lớn vòng đời của ứng dụng.
Chính vì các đặc điểm trên, Activity phải được khai báo trong file AndroidManifest khi muốn sử dụng. Để học về Activity, bạn cần nắm được về ba công dụng trên của nó.
###Phân loại Activity.
Với câu hỏi này đầu tiên mình cần làm rõ là bạn không nên hiểu sai về ActionBar. Đó là khái niệm về thanh công cụ có chứa title của màn hình cùng một vài nút bấm, một kiểu thiết kế hay gặp trong Android.
Chúng ta có một số loại class Activity được extends từ Activity cha như AppCompatActivity, ListActivity, NativeActivity… là do như bạn đã thấy rằng Activity là một khái niệm khá chung chung gần như không có gì nhưng lại phải đảm nhiệm quá nhiều công việc. Các loại class con kia được sinh ra để giải quyết các bài toán chung trong Activity.
Ví dụ bạn có một màn hình hiển thị mỗi danh sách gì đó. Bạn sử dụng ListActivity, ở đó viết sẵn cho bạn một cấu trúc để làm việc với danh sách rất dễ dàng, bạn không cần phải làm gì nhiều cả. Tương tự bạn muốn xây dựng giao diện material, AppCompatActivity sẽ hỗ trợ bạn rất nhiều.
P/s: Như đã nói, hôm nay mình rảnh mình có thể hỗ trợ bạn nhiệt tình. Còn không thì ai cũng vậy thôi, nếu bạn không đặt ra một câu hỏi thật sự rõ ràng, sẽ chẳng ai muốn trả lời bạn. Nhất là những kiến thức cơ bản như vậy.
Thân.
Activity trong tiêng Anh có nghĩa là “Hoạt động” (ví dụ the firm’s marketing activities).
Nhiệm vụ của class này như bạn @TamNinja chia sẻ rồi, tuy nhiên có thể mới học bạn sẽ khó hiểu với giải thích này một chút.
Mình chia sẻ thêm xem có dễ hiểu hơn chút nào k ^^
- Activity giống như một cái box bao quanh một màn hình vậy (nó không thực sự giống form, frame hay windows trong C# vì mấy cái này trong android cũng có khái niệm tương ứng là Layout). Nó làm nhiệm vụ cung cấp mọi thứ để android render một màn hình GUI cho bạn (khái niệm Context - ngữ cảnh).
- ActionBarActivity được mở rộng từ Activity, nó sẽ bao gồm render và quản lý một ActionBar phía trên (trên đó thường có một menu phía bên phải)