Vì có vẻ như GridLayout sẽ luôn đẩy con của nó vào bố cục tương ứng với nhu cầu của chúng. ví dụ: tuyên bố sau:GridLayout đẩy xuống con và tràn của nó khi điền fill_parent cho chiều cao
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:columnCount="3"
android:orientation="vertical"
android:rowCount="4"
android:useDefaultMargins="true" >
...
<ImageView
android:id="@+id/main_image"
android:layout_column="1"
android:layout_columnSpan="2"
android:layout_row="3"
android:scaleType="fitStart" />
</GridLayout>
GridLayout tuyên bố fill_parent và như vậy tôi mong đợi nó sẽ không tràn. GridLayout nên lấy kích thước của cha mẹ mà trong trường hợp này là cửa sổ (chiều cao đầy đủ). Tuy nhiên trong trình xem phân cấp, GridLayout được đặt là Wrap_content cho cả dọc và ngang.
Như vậy ImageView (đó là một hình ảnh lớn) hoặc bất kỳ chế độ xem văn bản nào sẽ được đẩy để vừa với chính chúng và khi vùng chứa đó bị tràn.
Điều này có thể được nhìn thấy trong người xem hệ thống phân cấp nơi xem lưới chứa phù hợp với phụ huynh:
trong khi xem hình ảnh tràn
Đọc tài liệu hướng dẫn, tôi hiểu có nhu cầu đặt trọng lực. Theo như tôi có thể thử, tôi đã sử dụng tất cả các loại tùy chọn trọng lực và tùy chọn chia tỷ lệ hình ảnh mà không có nhiều hiệu ứng. Loại bỏ các lề với useDefaultMargins="false"
sẽ thay đổi tràn bố cục dẫn đến vấn đề đối với gridlayout.
Câu hỏi của tôi sau:
- Đây có phải là một lỗi hay tôi đang sử dụng GridLayout sai
- Làm thế nào tôi có thể buộc trẻ em của GridLayout để phù hợp với container của họ và để lấp đầy gian còn lại
thấy điều này http://developer.android.com/resources/tutorials/views/hello-gridview.html – NagarjunaReddy
Tôi có vấn đề này cùng, trừ khi tôi cung cấp cho các yếu tố đầu tiên một chiều cao rõ ràng, nó chiếm các toàn bộ cha mẹ và đẩy phần còn lại của bề mặt ... – sethro