Quản lý các thay đổi về cấu hình bàn phím có thể tháo rời

Hệ thống Android sẽ kích hoạt thay đổi cấu hình mỗi khi bàn phím được gắn vào hoặc tháo khỏi thiết bị. Để đảm bảo trải nghiệm người dùng liền mạch và tối đa hoá năng suất của người dùng trên các thiết bị màn hình lớn có bàn phím có thể tháo rời, ứng dụng của bạn cần quản lý hiệu quả các thay đổi về cấu hình bàn phím.

Ngăn chặn việc tạo lại hoạt động khi thay đổi bàn phím

Để ngăn hoạt động của bạn được tạo lại khi bàn phím có thể tháo rời được gắn hoặc tháo rời, hãy thêm các giá trị liên quan đến bàn phím vào thuộc tính configChanges của tệp kê khai ứng dụng và thêm một thành phần hiển thị vào hệ phân cấp khung hiển thị của hoạt động để ứng dụng của bạn có thể theo dõi các thay đổi về cấu hình.

1. Khai báo thuộc tính configChanges

Cập nhật phần tử <activity> trong tệp kê khai ứng dụng bằng cách thêm các giá trị keyboard|keyboardHidden vào danh sách các thay đổi về cấu hình đã được quản lý:

<activity
    ...
    android:configChanges="...|keyboard|keyboardHidden">

2. Thêm một thành phần hiển thị trống vào hệ phân cấp khung hiển thị

Khai báo một thành phần hiển thị mới và thêm mã xử lý vào bên trong phương thức onConfigurationChanged() của thành phần hiển thị:

Kotlin

val v = object : View(this) {
    override fun onConfigurationChanged(newConfig: Configuration?) {
        super.onConfigurationChanged(newConfig)
        // Handler code here.
    }
}

Java

View v = new View(this) {
    @Override
    protected void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        // Handler code here.
    }
};

Điểm chính

  • android:configChanges: Thuộc tính của phần tử <activity> trong tệp kê khai ứng dụng. Thông báo cho hệ thống về các thay đổi về cấu hình mà ứng dụng quản lý.
  • View#onConfigurationChanged(): Phương thức phản ứng với việc truyền cấu hình ứng dụng mới.

Kết quả

Ứng dụng của bạn hiện phản hồi khi bàn phím bên ngoài được đính kèm hoặc tháo rời mà không cần tạo lại hoạt động đang chạy.

Các bộ sưu tập chứa hướng dẫn này

Hướng dẫn này là một phần của các bộ sưu tập Hướng dẫn nhanh được tuyển chọn này, bao gồm các mục tiêu phát triển Android rộng hơn:

Cho phép ứng dụng của bạn hỗ trợ trải nghiệm người dùng được tối ưu hoá trên máy tính bảng, thiết bị có thể gập lại và thiết bị ChromeOS.

Bạn có câu hỏi hoặc ý kiến phản hồi

Hãy truy cập vào trang câu hỏi thường gặp để tìm hiểu về các hướng dẫn nhanh hoặc liên hệ với chúng tôi để cho chúng tôi biết suy nghĩ của bạn.