2012-05-01 29 views
5

Tôi có các mục trong Chế độ xem được hiển thị khi nhấp và không hiển thị khi bắt đầu hoạt động đó. Bây giờ mọi thứ hoạt động tốt nhưng khi tôi sử dụng công cụ bố cục đồ họa, tôi thấy những mục đó và nó làm việc với nó khó hơn.Làm cách nào để ẩn các phần tử trong bố cục đồ họa?

Có nghĩa là, tôi có một ListView với các mục, tôi thấy các mục đó ở trên cùng của mọi thứ.

Làm cách nào để ẩn các yếu tố đó? thiết lập khả năng hiển thị lập trình không giúp ích gì. Tôi có nên làm một cái gì đó như thiết lập alpha 0 và sau đó thêm nó thay vì làm cho các mục vô hình? Có vẻ như một ý tưởng ngớ ngẩn, phải có một số tùy chọn mà tôi đang thiếu.

Giúp đỡ bất kỳ ai?

Cảm ơn, Eric

Trả lời

22

Tại sao không thiết lập khả năng hiển thị để 'biến mất': android:visibility="gone"? Điều đó sẽ ngăn các mục bố cục hiển thị chiếm dung lượng trong bố cục.

Ngoài ra, nếu một số yếu tố trong hệ thống phân cấp chế độ xem của bạn có thể không bao giờ được hiển thị cho người dùng, bạn có thể sử dụng ViewStub s để 'lazily' tải chúng khi chạy. Một ViewStub chỉ đơn giản là trình giữ chỗ cho một số chế độ xem khác (phân cấp) và trống và không có kích thước bằng chính nó. Đó là một cách hay để tách phân cấp khung nhìn của bạn thành các phần tử mặc định và tùy chọn và có thể làm giảm độ phức tạp của cấu trúc phân cấp lượt xem trong thời gian chạy đáng kể.

6

Nếu bạn muốn ẩn phần tử theo lập trình/có điều kiện thay vì trong XML bố cục như được đề xuất ở trên và đặt chế độ hiển thị không hoạt động, có thể cú pháp của bạn sai? Đây là cách bạn ẩn một phần tử theo chương trình:

element.setVisibility(View.GONE); 
Các vấn đề liên quan