Tôi đang thêm một nút theo chương trình vào chế độ xem Android hiện tại của mình, khi người dùng nhấn vào một nút khác. Nó hoạt động theo chức năng, nhưng một số thông tin kiểu dường như bị bỏ qua.Android - Thêm chế độ xem có thể bỏ qua một số thuộc tính kiểu dáng
Tôi đang thêm nút bằng cách bố cục riêng biệt chỉ chứa nút, với giá trị kiểu được điền sẵn.
<Button xmlns:android="http://schemas.android.com/apk/res/android" style="@style/FileStorageDeleteButton"></Button>
Bằng cách sử dụng getLayoutInflater
, tôi sau đó có thể thêm nút này để bố trí.
buttonDelete = (Button) getLayoutInflater().inflate(R.layout.pete_button_filedelete, null);
LinearLayout layout = (LinearLayout)findViewById(R.id.layoutFileStorage);
layout.addView(buttonDelete, 1);
Tôi có một tập tin XML trong thư mục các giá trị mà thiết lập màu sắc, văn bản vv cho @style/FileStorageDeleteButton
, hầu hết trong số đó đang được sử dụng bởi các nút khi nó được thêm vào . Nhưng vì lý do nào đó, bốn thuộc tính lề và layout_below
đang bị bỏ qua.
Tôi không gặp lỗi nào trong LogCat khi nút này xuất hiện, nó giống như kiểu dáng đơn giản không được áp dụng. Nếu tôi đưa nút theo cách thủ công vào XML cho bố cục đó, nó sẽ sử dụng tất cả các kiểu thành công.
Bất kỳ trợ giúp nào được đánh giá cao.
Cảm ơn David - bài đăng của bạn đã gửi cho tôi đúng hướng để thấy rằng tôi có thể p ass biến nhiều hơn vào thổi phồng. Bây giờ sử dụng 'buttonDelete = (Button) getLayoutInflater(). Inflate (R.layout.pete_button_filedelete, layout, false);', mặc dù 'layout_below' vẫn bị bỏ qua. Tôi có thể giải quyết vấn đề này, nhưng chỉ tự hỏi tại sao cái đó vẫn không hoạt động? Cảm ơn một lần nữa! Nếu tôi có danh tiếng để upvote bạn, tôi sẽ :) –
'layout_below' chỉ được sử dụng cho một' RelativeLayout'. 'LinearLayout' của bạn bỏ qua thuộc tính này. Trong 'LinearLayout' bạn có thể kiểm soát ở trên/dưới bằng cách sử dụng vị trí của khung nhìn trong layout. –