2013-07-28 31 views
6

Tôi tạo ra bố trí lớn, bố trí bình thườnglayout-xlarge trong res thư mục và tôi sao chép tất cả các file xml để các thư mục bố trímàn hình hỗ trợ nhiều thiết bị sử dụng thư mục bố trí lớn, bố trí bình thường và bố trí-xlarge

Trước tiên, tôi muốn hỏi sự khác biệt giữa bố trí (các mặc định) và bố trí bình thường thư mục là gì?

Tôi biết nếu tôi chạy ứng dụng trên kích thước màn hình lớn, ứng dụng sẽ lấy tệp xml từ layout-xlarge. Vì vậy, tôi làm tất cả các yếu tố trong layout-xlarge nhìn như tôi muốn sử dụng FrameLayout trong tap2 10.1, nhưng khi tôi chạy nó trong Note2 hoặc s3 di động có vẻ khác nhau, vì kích thước màn hình là không giống nhau .

Vậy làm thế nào tôi có thể làm cho ứng dụng chạy ở tap2 10.1 (1.280 x 800) và kích thước note2 hoặc s3 (1.280 x 720)?

Trả lời

12

Here có mô tả chính thức về cách hỗ trợ tất cả kích thước màn hình. Và như đã mô tả các thư mục bố trí là:

res/layout/my_layout.xml    // layout for normal screen size ("default") 
res/layout-small/my_layout.xml  // layout for small screen size 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-xlarge/my_layout.xml 

Vì vậy layoutlayout-normal thư mục là như nhau, nhưng trong API Android mới không có là không có nhiều thư mục bố trí bình thường, nhưng chỉ có thư mục bố trí. Ngoài ra bạn phải biết nếu không có bố trí cụ thể của kích thước màn hình trong phù thủy các ứng dụng đang chạy, theo mặc định các ứng dụng có bố trí "mặc định".

EDIT

Bạn có thể có độ phân giải màn hình khác nhau trong cùng một thư mục, như bạn có thể học hỏi từ những hình ảnh này:

enter image description here

Nếu bạn muốn có một bố trí cụ thể hơn cho giải pháp cụ thể mà bạn phải phát hiện tại thời gian chạy kích thước màn hình chính xác.

+0

nhưng có nhiều kích thước trong mỗi thư mục –

+0

ví dụ 1.280 x 800 và 1,280 x 720 chúng đều nằm trong layout-xlarge –

+0

xem câu trả lời của tôi chỉnh sửa – lory105

0

Từ Supporting Multiple Screens, bạn nên xác định thư mục bố trí như thế này

res/layout/my_layout.xml    // layout for normal screen size ("default") 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-xlarge/my_layout.xml  // layout for extra-large screen size 
res/layout-xlarge-land/my_layout.xml // layout for extra-large in landscape orientation 

(màn hình loại trên cơ sở)

xlarge screens are at least 960dp x 720dp 
large screens are at least 640dp x 480dp 
normal screens are at least 470dp x 320dp 
small screens are at least 426dp x 320dp 
Các vấn đề liên quan