2012-07-02 32 views
5

Tất cả tôi có tệp bố cục khác nhau cho các phiên bản Android khác nhau như layout-v13, nhưng tôi nhận thấy rằng các tệp này giống nhau đối với các phiên bản Android mới hơn (API 11-16). Có cách nào để nhóm chúng lại với nhau như một cái gì đó như layout-v11,12,13,14,15,16? Cảm ơn vì đã dành thời gian cho tôi!Kết hợp tệp Bố cục cho nhiều số phiên bản

Trả lời

3

layout-v11 sẽ được tất cả các thiết bị chạy Android 3.0 trở lên sử dụng. Bạn chỉ nên chia nhỏ các thư mục (ví dụ: layout-v11, layout-v12, v.v.) nếu thiết bị chạy phiên bản cụ thể yêu cầu bố cục khác.

+0

OK Tôi sẽ dùng thử thiết bị này. – ninge

+0

Hoàn hảo. Làm việc như người ở. Cảm ơn sự giúp đỡ của bạn! – ninge

+0

Như đã đề cập tôi có một tập tin bố trí trong v11 được đặt nhưng API 23 bỏ qua nó. Khi tôi tạo một bản sao và đặt nó trong v17 nó hoạt động như mong đợi. Vì vậy, từ v11 đến v16, nó hoàn toàn bị bỏ qua. Điều này không xảy ra trên API 15 chẳng hạn. Có vẻ như một lỗi cụ thể của nền tảng. – drindt

4

Nếu những gì bạn đang cố gắng làm hiển thị bố cục khác nhau tùy thuộc vào phiên bản API nào có sẵn trên thiết bị, bạn muốn sử dụng configuration qualifiers. Các chi tiết cụ thể cho các tài nguyên thay thế cũng là documented.

Cách cơ bản nhất để làm điều đó là tạo ra một thư mục bố trí cho mỗi cấp API bạn muốn sử dụng, định dạng như sau:

res/layout/layout.xml  (Default) 
res/layout-v4/layout.xml (Android 1.6 and higher) 
res/layout-v11/layout.xml (Android 3.0 and higher) 

Từ tài liệu chính thức Android enter image description here

Trong trường hợp của bạn layout-v11 điều này sẽ được sử dụng bởi các thiết bị chạy Android 3.0 Honeycomb và phía trên

+0

Cảm ơn sự giúp đỡ của bạn! – ninge

+0

+1 để tham chiếu tài liệu chính thức. – cbrulak

+0

Tôi có bố cục được tạo trong 'layout-v11' nhưng nó bị bỏ qua trên v23. – drindt

Các vấn đề liên quan