wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Câu hỏi về phát triển Android với Kotlin

Total questions: 89

Worksheet time: 46mins

Name
Class
Date
1.

1. Đuôi tệp nào được sử dụng để lưu tệp Kotlin?

a)

.java

b)

.kot

c)

.kt hoặc .kts

d)

.android

2.

2. Từ khóa nào được sử dụng để định nghĩa một biến không thay đổi?

a)

var

b)

val

c)

immulvar

d)

immutableVar

3.

3. Kotlin có tương thích với ngôn ngữ lập trình Java không?

a)

Có, nó tương thích

b)

Không, nó không tương thích

4.

4. Lệnh nào sẽ trả về độ dài của một chuỗi trong Kotlin?

a)

str.length

b)

length(str)

c)

str.lengthOf

d)

str.getLength()

5.

5. Trong số các tùy chọn sau, tùy chọn nào được sử dụng để viết mã an toàn với null trong Kotlin?

a)

Range

b)

Sealed Class

c)

Elvis Operator

d)

Lambda Function

6.

6. Cách chính xác để tạo một Arraylist trong Kotlin là gì?

a)

val map = hashMapOf(1 to "one", 2 to "two", 3 to "three")

b)

enum class Color {RED, GREEN, BLUE}

c)

val set = hashSetOf(1, 2, 3)

d)

val list = arrayListOf(1, 2, 3)

7.

1. Các hàm trong Kotlin được tạo ra bằng từ khóa nào?

a)

void

b)

fun

c)

function

d)

def

8.

2. Kiểu trả về mặc định của bất kỳ hàm nào được định nghĩa trong Kotlin là gì?

a)

Int

b)

Double

c)

void

d)

Unit

9.

3. Hàm để in một dòng trong Kotlin là gì?

a)

println()

b)

printLine()

c)

linePrint()

d)

line()

10.

4. Câu lệnh 'when' trong Kotlin tương tự với câu lệnh nào trong các ngôn ngữ lập trình khác?

a)

if

b)

break

c)

switch

d)

continue

11.

5. Lambda là gì trong Kotlin?

a)

Một lambda là một kiểu dữ liệu trong Kotlin

b)

Một lambda là một kiểu lớp trong Kotlin

c)

Một lambda là một giao diện trong Kotlin

d)

Một lambda là một biểu thức mô tả một hàm. Nhưng thay vì khai báo một hàm có tên, bạn khai báo một hàm không có tên

12.

1. Hành vi mặc định của các lớp trong Kotlin là gì?

a)

Tất cả các lớp đều là private

b)

Tất cả các lớp đều là sealed

c)

Tất cả các lớp đều là final

d)

Tất cả các lớp đều là protected

13.

2. Cách chính xác để khai báo đối tượng cho lớp Book trong Kotlin là gì?

a)

Book b1 = new Book()

b)

val b1 = Book()

c)

var b1 = (Book) new()

d)

val b1 = (new) Book()

14.

3. Điều gì đúng về các hàm mở rộng trong Kotlin?

a)

Cho phép bạn viết các hàm mới cho một lớp mà bạn không thể sửa đổi

b)

Sử dụng cú pháp chấm để gọi chúng trên các biến của loại bạn đang mở rộng

c)

Nó phải được khai báo trong cùng một tệp với lớp gốc mà bạn đang mở rộng

d)

Sử dụng từ khóa extend để khai báo các hàm này

15.

4. Điều nào sau đây là đúng về các lớp dữ liệu?

a)

Bạn cần phải triển khai phương thức toString()

b)

Không cần tham số cho bộ khởi tạo chính

c)

Sử dụng nó cho các lớp lưu trữ dữ liệu

d)

Các phương thức getter được tự động tạo cho bạn (và các phương thức setter cho các biến có thể thay đổi)

16.

5. Từ khóa nào được sử dụng để chỉ ra rằng một lớp có thể được kế thừa?

a)

public

b)

protected

c)

internal

d)

open

17.

1. Phương thức nào trên một Activity làm cho bố cục của ứng dụng được tạo và làm cho các view của nó có sẵn dưới dạng đối tượng?

a)

onCreate()

b)

setClickListener()

c)

setContentView()

d)

show()

18.

2. Thuộc tính view nào bạn sử dụng để đặt chiều rộng của một View sao cho nó điều chỉnh để phù hợp với nội dung?

a)

android:view_width="wrap"

b)

android:layout_width="wrap_content"

c)

android:layout_height="wrap_content"

d)

android:layout_width="match_parent"

19.

3. Phương thức nào thay đổi tài nguyên hình ảnh cho một ImageView trong mã Kotlin?

a)

setImageResource()

b)

setImageURI()

c)

setImage()

d)

setImageRes()

20.

4. Từ khóa lateinit trong khai báo biến trong mã Kotlin chỉ ra điều gì?

a)

Biến không bao giờ được khởi tạo.

b)

Biến chỉ được khởi tạo tại thời điểm chạy ứng dụng.

c)

Biến tự động được khởi tạo thành null.

d)

Biến sẽ được khởi tạo sau.

21.

5. Cấu hình Gradle nào chỉ ra mức API gần đây nhất mà ứng dụng của bạn đã được thử nghiệm?

a)

minSdkVersion

b)

compileSdkVersion

c)

targetSdkVersion

d)

testSdkVersion

22.

6. Trong số các công cụ truy cập sau, công cụ nào được tích hợp sẵn với hầu hết các thiết bị Android?

a)

Trong Android Studio, Refactor > Thêm hỗ trợ RTL khi có thể

b)

Accessibility Scanner

c)

TalkBack

d)

Lint

23.

1. Trong số các tùy chọn sau, tùy chọn nào là ViewGroup?

a)

EditText

b)

LinearLayout

c)

TextView

d)

Button

24.

2. Trong số các cấu trúc hiển thị được liệt kê sau, cấu trúc nào không hợp lệ?

a)

LinearLayout > TextView, TextView, ImageView

b)

ScrollView > LinearLayout > TextView, Button, ScrollView > TextView

c)

TextView > TextView, ImageView, ScrollView

d)

ConstraintLayout > TextView, EditText, Button

25.

3. Các kiểu là tài nguyên được định nghĩa trong styles.xml. Sử dụng các kiểu, bạn có thể định nghĩa màu sắc, phông chữ, kích thước văn bản và nhiều đặc điểm khác của một view. Đúng hay sai?

a)

Đúng, bạn có thể định nghĩa những điều này.

b)

Sai, bạn không thể định nghĩa những điều này.

26.

4. Một View có thể chứa bất kỳ số lượng View hoặc ViewGroup nào làm con của nó. Đúng hay sai?

a)

Đúng, View có thể chứa bất kỳ số lượng View hoặc ViewGroup.

b)

Sai, View chỉ có thể có 1 con.

27.

5. EditText là một lớp con của loại nào?

a)

TextField

b)

LinearLayout

c)

TextView

d)

Button

28.

6. Trong số các giá trị thuộc tính visibility sau, nếu được đặt trên một view, giá trị nào làm cho view bị ẩn và không chiếm không gian nào trong bố cục?

a)

visible

b)

invisible

c)

gone

d)

hide

29.

7. Một trong những tuyên bố sau đây là đúng về các view Button?

a)

Một view Button là một ViewGroup.

b)

Bạn chỉ có thể có ba view Button trên mỗi màn hình.

c)

Các view Button có thể nhấp, và khi nhấp, listener nhấp đính kèm thực hiện một hành động.

d)

Button là một phần mở rộng của ImageView.

30.

8. Trong một ConstraintLayout, lựa chọn nào sau đây mô tả các ràng buộc cần thiết để giữ một view ở vị trí trong thời gian chạy?

a)

Hai ràng buộc ngang.

b)

Một ràng buộc dọc.

c)

Ít nhất một ràng buộc ngang và một ràng buộc dọc.

d)

Không cần ràng buộc view.

31.

9. Trong số các loại ràng buộc sau, loại nào mở rộng một view chỉ nhiều như cần thiết để phù hợp với nội dung của nó?

a)

Wrap content

b)

Match constraint

c)

Fixed constraint

d)

Baseline constraint

32.

10. Một số lợi ích của việc sử dụng Trình chỉnh sửa Bố cục trong Android Studio là gì?

a)

Kéo và thả các phần tử UI lên màn hình với trình chỉnh sửa thiết kế trực quan

b)

Chỉnh sửa thuộc tính view

c)

Kiểm tra hành vi nhấp nút và xem ứng dụng sẽ phản ứng như thế nào

d)

Chọn loại và kích thước thiết bị để xem trước bố cục của bạn

33.

11. Trong số các lý do sau, lý do nào không phải là lý do để giảm thiểu các cuộc gọi đến findViewById()?

a)

Mỗi lần findViewById() được gọi, nó duyệt qua cấu trúc view.

b)

findViewById() chạy trên luồng chính hoặc luồng UI.

c)

Các cuộc gọi này có thể làm chậm giao diện người dùng.

d)

Ứng dụng của bạn ít có khả năng bị sập.

34.

12. Cách chính xác để tham chiếu dữ liệu đã ràng buộc trong bố cục XML là gì?

a)

android:text="@={myDataClass.property}"

b)

android:text="@={myDataClass}"

c)

android:text="@={myDataClass.property.string}"

d)

android:text="@={myDataClass.bound_data.property}"

35.

1. Trong số các tuyên bố sau về các fragment, tuyên bố nào là đúng? Chọn tất cả những gì áp dụng.

a)

Bạn có thể sử dụng một Fragment trong nhiều Activity.

b)

Một Activity có thể có nhiều fragment.

c)

Sau khi bạn định nghĩa một Fragment trong một lớp Kotlin, fragment sẽ tự động được thêm vào tệp activity_main.xml.

d)

Sử dụng thẻ để định nghĩa vị trí trong tệp bố cục nơi một Fragment sẽ được chèn vào.

36.

2. Làm thế nào để bạn cho phép dự án của mình sử dụng các thành phần điều hướng?

a)

Đảm bảo mỗi lớp Activity đều mở rộng lớp NavigationActivity.

b)

Sử dụng lớp NavigationController làm activity khởi động.

c)

Thêm uses-navigation vào tệp AndroidManifest.xml.

d)

Thêm các phụ thuộc cho navigation-fragment-ktx và navigation-ui-ktx trong tệp build.gradle (module).

37.

3. Các tuyến đường điều hướng có thể có trong ứng dụng của bạn được định nghĩa ở đâu?

a)

Trong một tệp (thường được gọi là navigation.xml) trong thư mục res > layout.

b)

Trong một tệp (thường được gọi là navigation.xml) trong thư mục app > navigation.

c)

Trong một tệp (thường được gọi là navigation.xml) trong thư mục res > navigation.

d)

Trong tệp AndroidManifest.xml, dưới phần tử.

38.

Bạn cần làm gì để kích hoạt menu tràn (còn được gọi là menu tùy chọn)? Bạn có thể giả định rằng bạn đã định nghĩa các mục menu.

a)

Gọi setHasOptionsMenu(true) trong onCreate() cho một Activity hoặc onCreateView() cho một Fragment.

b)

Triển khai onCreateOptionsMenu() trong Activity hoặc Fragment để tạo menu.

c)

Đặt thuộc tính onClick trong tệp menu.xml thành onShowOptionsMenu, trừ khi bạn đang triển khai một trình lắng nghe onClick tùy chỉnh cho menu tùy chọn, trong trường hợp đó hãy chỉ định tên của trình lắng nghe tùy chỉnh đó.

d)

Triển khai onOptionsItemSelected() trong Activity hoặc Fragment để xác định những gì xảy ra khi người dùng chọn một mục menu trong menu tùy chọn.

39.

Plugin Gradle Safe Args làm gì? Chọn tất cả những gì áp dụng.

a)

Tạo các lớp đối tượng và lớp xây dựng đơn giản cho việc truy cập an toàn kiểu đến các tham số được chỉ định cho các điểm đến và hành động.

b)

Tạo các lớp Điều hướng mà bạn có thể chỉnh sửa để đơn giản hóa việc truyền tham số giữa các fragment.

c)

Tạo một phương thức cho mỗi hành động mà bạn đã định nghĩa trong đồ thị điều hướng.

d)

Ngăn chặn mã của bạn sử dụng khóa sai khi trích xuất dữ liệu từ một gói.

40.

Ứng dụng của bạn chứa một mô phỏng vật lý yêu cầu tính toán nặng để hiển thị. Sau đó, người dùng nhận được một cuộc gọi điện thoại. Điều nào sau đây là đúng?

a)

Trong cuộc gọi điện thoại, bạn nên tiếp tục tính toán vị trí của các đối tượng trong mô phỏng vật lý.

b)

Trong cuộc gọi điện thoại, bạn nên ngừng tính toán vị trí của các đối tượng trong mô phỏng vật lý.

41.

Phương thức vòng đời nào bạn nên ghi đè để tạm dừng mô phỏng khi ứng dụng không hiển thị trên màn hình?

a)

onDestroy()

b)

onStop()

c)

onPause()

d)

onSaveInstanceState()

42.

Để làm cho một lớp nhận thức vòng đời thông qua thư viện vòng đời Android, lớp đó nên triển khai giao diện nào?

a)

Lifecycle

b)

LifecycleOwner

c)

Lifecycle.Event

d)

LifecycleObserver

43.

Trong những hoàn cảnh nào phương thức onCreate() trong hoạt động của bạn nhận được một Bundle với dữ liệu trong đó (tức là, Bundle không null)?

a)

Hoạt động được khởi động lại sau khi thiết bị được xoay.

b)

Hoạt động được khởi động từ đầu.

c)

Hoạt động được phục hồi sau khi trở về từ nền.

d)

Thiết bị được khởi động lại.

44.

Phương thức vòng đời nào được gọi để làm cho một hoạt động hiển thị?

a)

onPause()

b)

onVisible()

c)

onStart()

d)

onDestroy()

45.

Phương thức vòng đời nào được gọi để cho một hoạt động có được tiêu điểm?

a)

onResume()

b)

onVisible()

c)

onStart()

d)

onFocus()

46.

Để tránh mất dữ liệu trong quá trình thay đổi cấu hình thiết bị, bạn nên lưu dữ liệu ứng dụng trong lớp nào?

a)

ViewModel

b)

LiveData

c)

Fragment

d)

Activity

47.

Một ViewModel không bao giờ nên chứa bất kỳ tham chiếu nào đến các fragment, hoạt động hoặc view. Đúng hay sai?

a)

Đúng, nó không nên chứa bất kỳ tham chiếu nào.

b)

Sai, nó nên chứa ít nhất một tham chiếu đến một trong những điều trên.

48.

Khi nào một ViewModel bị hủy?

a)

Khi bộ điều khiển UI liên quan bị hủy và được tạo lại trong quá trình thay đổi định hướng thiết bị.

b)

Trong một thay đổi định hướng.

c)

Khi bộ điều khiển UI liên quan bị hoàn thành (nếu đó là một hoạt động) hoặc bị tách (nếu đó là một fragment).

d)

Khi người dùng nhấn nút Quay lại.

49.

Giao diện ViewModelFactory dùng để làm gì?

a)

Khởi tạo một đối tượng ViewModel.

b)

Giữ lại dữ liệu trong quá trình thay đổi định hướng.

c)

Làm mới dữ liệu đang được hiển thị trên màn hình.

d)

Nhận thông báo khi dữ liệu ứng dụng bị thay đổi.

50.

Làm thế nào để bạn đóng gói LiveData được lưu trữ trong ViewModel để các đối tượng bên ngoài có thể đọc dữ liệu mà không thể cập nhật nó?

a)

Bên trong đối tượng ViewModel, thay đổi kiểu dữ liệu của dữ liệu thành LiveData riêng tư. Sử dụng thuộc tính hỗ trợ để xuất dữ liệu chỉ đọc của kiểu MutableLiveData.

b)

Bên trong đối tượng ViewModel, thay đổi kiểu dữ liệu của dữ liệu thành MutableLiveData riêng tư. Sử dụng thuộc tính hỗ trợ để xuất dữ liệu chỉ đọc của kiểu LiveData.

c)

Bên trong bộ điều khiển UI, thay đổi kiểu dữ liệu của dữ liệu thành MutableLiveData riêng tư. Sử dụng thuộc tính hỗ trợ để xuất dữ liệu chỉ đọc của kiểu LiveData.

d)

Bên trong đối tượng ViewModel, thay đổi kiểu dữ liệu của dữ liệu thành LiveData. Sử dụng thuộc tính hỗ trợ để xuất dữ liệu chỉ đọc của kiểu LiveData.

51.

LiveData cập nhật một bộ điều khiển UI (chẳng hạn như một fragment) nếu bộ điều khiển UI ở trong trạng thái nào sau đây?

a)

Đã phục hồi

b)

Trong nền

c)

Đã tạm dừng

d)

Đã dừng

52.

Trong mẫu quan sát LiveData, đối tượng quan sát (được quan sát) là gì?

a)

Phương thức quan sát

b)

Dữ liệu trong một đối tượng LiveData

c)

Bộ điều khiển UI

d)

Đối tượng ViewModel

53.

Trong lớp nào bạn nên thêm logic định dạng dữ liệu sử dụng phương thức Transformations.map() để chuyển đổi LiveData thành một giá trị hoặc định dạng khác?

a)

ViewModel

b)

Fragment

c)

Activity

d)

MainActivity

54.

Phương thức Transformations.map() cung cấp một cách dễ dàng để thực hiện các thao tác dữ liệu trên LiveData và trả về ___.

a)

Một đối tượng ViewModel

b)

Một đối tượng LiveData

c)

Một chuỗi đã định dạng

d)

Một đối tượng RoomDatabase

55.

Các tham số cho phương thức Transformations.map() là gì?

a)

Một LiveData nguồn và một hàm sẽ được áp dụng cho LiveData

b)

Chỉ một LiveData nguồn

c)

Không có tham số

d)

ViewModel và một hàm sẽ được áp dụng

56.

Hàm lambda được truyền vào phương thức Transformations.map() được thực thi trong luồng nào?

a)

Luồng chính

b)

Luồng nền

c)

Luồng UI

d)

Trong một coroutine

57.

Bạn làm thế nào để chỉ ra rằng một lớp đại diện cho một thực thể để lưu trữ trong cơ sở dữ liệu Room?

a)

Làm cho lớp mở rộng DatabaseEntity.

b)

Chú thích lớp với @Entity.

c)

Chú thích lớp với @Database.

d)

Làm cho lớp mở rộng RoomEntity và cũng chú thích lớp với @Room.

58.

DAO (đối tượng truy cập dữ liệu) là một giao diện mà Room sử dụng để ánh xạ các hàm Kotlin đến các truy vấn cơ sở dữ liệu. Làm thế nào để bạn chỉ ra rằng một giao diện đại diện cho một DAO cho cơ sở dữ liệu Room?

a)

Làm cho giao diện mở rộng RoomDAO.

b)

Làm cho giao diện mở rộng EntityDao, sau đó triển khai phương thức DaoConnection().

c)

Chú thích giao diện với @Dao.

d)

Chú thích giao diện với @RoomConnection.

59.

Bạn có thể sử dụng chú thích nào trong giao diện @Dao của bạn? Chọn tất cả những gì áp dụng.

a)

@Get

b)

@Update

c)

@Insert

d)

@Query

60.

Điều nào sau đây không phải là lợi ích của việc sử dụng coroutine?

a)

Chúng chạy bất đồng bộ.

b)

Chúng có thể được chạy trên một luồng khác ngoài luồng chính.

c)

Chúng luôn làm cho ứng dụng chạy nhanh hơn.

d)

Chúng có thể sử dụng ngoại lệ.

61.

Điều nào sau đây không đúng với các hàm Suspend?

a)

Một hàm được chú thích với từ khóa Suspend.

b)

Một hàm có thể được gọi bên trong các coroutine.

c)

Trong khi một hàm Suspend đang chạy, luồng gọi bị tạm dừng.

d)

Các hàm Suspend phải luôn chạy trong nền.

62.

Điều nào sau đây là KHÔNG đúng?

a)

Khi thực thi bị chặn, không có công việc nào khác có thể được thực hiện trên luồng bị chặn.

b)

Khi thực thi bị tạm dừng, luồng có thể thực hiện công việc khác trong khi chờ đợi công việc được chuyển giao hoàn thành.

c)

Tạm dừng hiệu quả hơn, vì các luồng có thể không chờ đợi, làm không có gì.

d)

Dù bị chặn hay tạm dừng, thực thi vẫn đang chờ kết quả của coroutine trước khi tiếp tục.

63.

Biến nào sau đây là hợp lệ?

a)

var hello: Int? = ""

b)

String "hello" = hello

c)

val hello = "hello"

d)

hello: String = "hello"

64.

Được coi là thực tiễn tốt nhất để khai báo một biến sẽ không thay đổi bằng var thay vì val.

a)

Đúng

b)

Sai

65.

Những cách nào sau đây là hợp lệ để cập nhật một biến?

a)

total++

b)

total - 1

c)

total--

d)

total = total + 1

66.

Trong Kotlin, các bình luận có thể là đơn hoặc đa dòng và bị trình biên dịch bỏ qua.

a)

Đúng

b)

Sai

67.

Điều nào sau đây không phải là kiểu dữ liệu trong Kotlin?

a)

String

b)

Decimal

c)

Int

d)

Boolean

68.

Float cũng đại diện cho một số thập phân, nhưng kém chính xác hơn Double.

a)

Đúng

b)

Sai

69.

Trong Kotlin, điểm vào của một chương trình là ___.

a)

câu lệnh println()

b)

biến val

c)

hàm main()

d)

câu lệnh return

70.

Điều nào sau đây là đúng về giá trị trả về của hàm?

a)

Nếu một hàm không chỉ định kiểu trả về, kiểu trả về là Unit.

b)

Một giá trị trả về có thể được lưu trữ trong một biến.

c)

Các hàm có kiểu trả về là Unit phải bao gồm một câu lệnh trả về.

d)

Kiểu của một giá trị trả về phải khớp với kiểu trả về của một hàm.

71.

Điều nào sau đây là đúng về các hàm?

a)

Các hàm có thể nhận tham số, hoặc biến đầu vào.

b)

Tham số hàm yêu cầu có các đối số mặc định.

c)

Khi gọi một hàm với các tham số, các giá trị được truyền vào được gọi là đối số.

d)

Phân chia mã của bạn thành các hàm riêng biệt giúp mã của bạn dễ bảo trì hơn.

72.

Mục đích của việc sử dụng một thiết bị ảo, hoặc trình giả lập, trong Android Studio là gì?

a)

Để hiển thị nhiều thông báo lỗi cho người dùng

b)

Để thử nghiệm mã ứng dụng một cách an toàn

c)

Để kiểm tra ứng dụng của bạn trên một thiết bị mà không cần thiết bị vật lý đó

d)

Để xem ứng dụng của bạn trông như thế nào trong trình duyệt web

73.

Trong Android Studio, mẫu dự án tốt cho điều gì?

a)

Nó khiến Android Studio tải tệp nhanh hơn.

b)

Nó giúp bắt đầu xây dựng một ứng dụng mới nhanh hơn.

c)

Nó cung cấp một cấu trúc theo các phương pháp tốt nhất.

d)

Nó là cách duy nhất để xây dựng ứng dụng có thể được xem trước trong Android Studio.

e)

Nó giúp xây dựng một ứng dụng mới ít lỗi hơn bằng cách tự động điền dự án với một số mã ứng dụng

74.

Bạn tạo một dự án mới trong Android Studio như thế nào?

a)

Nếu bạn đã mở một dự án, chọn Tệp > Mới > Dự án mới từ menu Android Studio.

b)

Trong cửa sổ 'Chào mừng đến với Android Studio', nhấp vào 'Bắt đầu một dự án Android Studio mới.'

c)

Đăng xuất khỏi Android Studio, và điều hướng đến thư mục dự án của bạn để tìm hướng dẫn.

d)

Tạo một tệp mới trên máy tính của bạn, và đặt tên cho nó là 'Dự án Android Studio Mới.'

75.

___ là một hàm được sử dụng để định nghĩa một bố cục trong ứng dụng của bạn bằng cách sử dụng các hàm Composable.

a)

ComponentActivity()

b)

onCreate()

c)

DefaultPreview()

d)

setContent()

76.

Một hàm Compose yêu cầu chú thích @Composable.

a)

Đúng

b)

Sai

77.

Một ___ là một Composable có màu nền và có thể chứa các Composables khác.

a)

Màu

b)

Container

c)

Surface

d)

Box

78.

Padding là một ví dụ về ___

a)

Thuộc tính

b)

Composable

c)

Thuộc tính

d)

Modifier

79.

Cái nào sau đây là sai về Compose?

a)

Mẫu Empty Compose Activity được sử dụng để tạo một ứng dụng đơn giản.

b)

Các bố cục có thể được xem trong cửa sổ Xem trước, mà không cần thực sự chạy ứng dụng của bạn.

c)

Tất cả các phần tử và chủ đề trong một ứng dụng Compose đều được chứa trong một Surface.

d)

Các chủ đề, chẳng hạn như GreetingCardTheme cho phép bạn định kiểu cho các Composables.

80.

Jetpack Compose là gì?

a)

Một bộ công cụ hiện đại để phát triển UI Android

b)

Bộ công cụ để thiết kế thư viện

c)

Giao diện cơ sở dữ liệu

d)

Plugin để xây dựng APK

81.

Các hàm Composable là khối xây dựng cơ bản của Compose.

a)

Đúng

b)

Sai

82.

Chú thích nào được sử dụng để chú thích một hàm Composable?

a)

@Annotation

b)

@ComposableFunction

c)

@Composable

d)

@Preview

83.

Ba phần tử bố trí tiêu chuẩn cơ bản trong Compose là

a)

Column

b)

Row

c)

Text

d)

Box

84.

Công cụ nào là cửa sổ công cụ để nhập, tạo, quản lý và sử dụng tài nguyên trong ứng dụng của bạn?

a)

Trình quản lý ứng dụng

b)

Trình quản lý tài nguyên

c)

Công cụ tài nguyên

d)

Trình quản lý bố cục

85.

Lớp nào là lớp tự động được tạo bởi Android chứa các ID của tất cả các tài nguyên trong dự án.

a)

Lớp Android

b)

Lớp Tài nguyên

c)

Lớp R

d)

Lớp ResourceID

86.

Hàm nào được sử dụng để tải một tài nguyên hình ảnh drawable.

a)

Hàm stringResource()

b)

Hàm painterResource()

c)

Hàm ImageResource()

d)

Hàm loadResource()

87.

Tham số hàm nào được sử dụng để thêm văn bản truy cập, được sử dụng bởi talkback?

a)

accessibilityText

b)

contentText

c)

accessibilityDescription

d)

contentDescription

88.

Bố cục Box xếp chồng các phần tử UI lên nhau.

a)

Đúng

b)

Sai

89.

Tham số nào được sử dụng để căn chỉnh phần tử con về phía đầu của phần tử cha?

a)

Alignment.End

b)

Alignment.Begin

c)

Alignment.Start

d)

Alignment.Top