Tôi không thể ghi đè thuộc tính khi sử dụng < bao gồm > trong tệp bố cục Android của tôi. Khi tôi tìm kiếm lỗi, tôi tìm thấy chối Issue 2863:Thẻ 'Bao gồm' của Android XML Layout có thực sự hoạt động không?
"bao gồm thẻ bị phá vỡ (trọng params bố trí không bao giờ làm việc)"
Kể từ khi Romain chỉ làm việc này trong phòng thí nghiệm và các ví dụ của mình, tôi phải làm gì đó sai rồi.
Dự án của tôi được tổ chức như thế này:
res/layout
buttons.xml
res/layout-land
receipt.xml
res/layout-port
receipt.xml
Các buttons.xml chứa một cái gì đó như thế này:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button .../>
<Button .../>
</LinearLayout>
Và bức chân dung và phong cảnh file receipt.xml giống như thế:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
...
<!-- Overridden attributes never work. Nor do attributes like
the red background, which is specified here. -->
<include
android:id="@+id/buttons_override"
android:background="#ff0000"
android:layout_width="fill_parent"
layout="@layout/buttons"/>
</LinearLayout>
Tôi đang thiếu gì?
Đây là lố bịch. Tôi chưa bao giờ có thể làm điều này để làm việc, và tôi thậm chí còn thấy tài liệu đề cập đến cần cả chiều cao và chiều rộng nếu cố gắng ghi đè kích thước, mà tôi giả định là chiều cao và chiều rộng. Tuy nhiên, tất cả những gì tôi đã cố gắng để ghi đè là lề, mà không thực sự là một chiều. Tại sao heck tôi cần phải xác định cả hai hoặc thậm chí bất kỳ của những người khi tất cả tôi muốn thay đổi là layout_marginRight? Grrr, Android, đôi khi bạn làm tôi thất vọng quá nhiều. –
Eric, bạn nên chấp nhận câu trả lời của riêng bạn làm giải pháp. –
FYI Android Lint sẽ cung cấp cho bạn một lỗi (Bố cục thông số layout_height bị bỏ qua trừ khi layout_width cũng được chỉ định trên thẻ) nếu bạn không ghi đè cả thuộc tính chiều cao và chiều rộng –
binary