2010-03-08 44 views
12

Tôi muốn tạo các thư mục riêng biệt cho bố trí của tôi, như thế này trong thư mục tài nguyên của tôi:Làm thế nào để tạo thư mục layout-small-land?

layout-land 
layout-port 

này là ok, nhưng điều này:

layout-small-land 
layout-small-port 

hoặc

layout-land-small 
layout-port-small 

Kết quả trong : 'Tên thư mục tài nguyên không hợp lệ'

Điều gì cho?

Trả lời

5

layout-small-landlayout-small-port là những câu trả lời chính xác, và họ lập chỉ tốt cho tôi. Có lẽ có cái gì khác không ổn trong cấu trúc thư mục của bạn.

+1

Tắt ứng dụng của tôi đã được nhắm mục tiêu cho 1.5 thay vì 1.6. Một khi tôi thay đổi mục tiêu, nó được biên dịch tốt. Cảm ơn bạn đã làm rõ rằng tên thư mục phải có hiệu quả đối với tôi. – codedeziner

+0

Ah, vâng, các hậu tố tập hợp tài nguyên '-small' và' -large' không hiển thị cho đến 1.6. – CommonsWare

5

Bạn có thể chỉ định mật độ màn hình thay vì một kích thước như lớn hoặc nhỏ

Ví dụ:

layout-port-hdpi 
layout-port-ldpi 
layout-port-mdpi 
layout-port-nodpi 

layout-land-hdpi 
layout-land-ldpi 
layout-land-mdpi 
layout-land-nodpi 

Thông tin thêm tại liên kết sau:

https://developer.android.com/guide/topics/resources/resources-i18n.html#AlternateResources

Để sử dụng lớn , Trung bình, Nhỏ theo cách này:

res/layout/my_layout.xml   // layout for normal screen size 
res/layout-small/my_layout.xml  // layout for small screen size 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-large-land/my_layout.xml // layout for large screen size in landscape mode 
+0

thì tại sao có tùy chọn định hướng màn hình nhỏ/bình thường/lớn? BTW, mục tiêu của tôi là 1,6 – codedeziner

+0

'lớn' và' nhỏ' là các hậu tố tập hợp tài nguyên hợp lệ. Xem hàng thứ ba (sau tiêu đề) của Bảng 2 trên trang bạn đã liên kết ở trên. – CommonsWare

+0

đã chỉnh sửa câu trả lời của tôi ở đó, tất cả đều là cách hợp lệ để sử dụng các tên lớn hoặc nhỏ, v.v. trong tên thư mục –

0

Tôi không tìm thấy bất kỳ thứ gì khác trên web tham chiếu cấu trúc này, nhưng bài đăng trên blog sau đây cho thấy ví dụ nơi tác giả sử dụng ldpi (và tôi chắc chắn mdpi và hdpi) thay vì nhỏ, bình thường và lớn (như tài liệu tham khảo android trực tuyến sẽ đề xuất). Có một cái nhìn tại liên kết dưới đây và có thể thử cấu trúc:

http://android.amberfog.com/?p=276

+0

Nửa chừng xuống dưới đây tại đây: http://developer.android.com/guide/practices/screens_support.html Có một ví dụ bằng cách sử dụng đất bố trí lớn.Xem xét nhỏ/bình thường/lớn và cảng/đất là lựa chọn, tôi tự hỏi tại sao tôi không thể sử dụng chúng. – codedeziner

1

Nó sẽ cung cấp cho bạn "invalid resource error" cho đến khi thư mục trống. Nếu bạn điền nó với các tập tin .xml (chúng phải khớp chính xác trong mọi thư mục layout-<qualifier>), nó sẽ không cho bạn lỗi.

EG:

bố trí cổng

-> mainscreen.xml

bố trí lớn cổng

-> mainscreen.xml

ok ok

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