Ну, во-первых ... Я не думаю, что ваш макет будет отображать то, что вы хотите, чтобы он отображал.Похоже, вы хотите, чтобы ваш макет содержал LinearLayout
с отображением кнопок и ScrollView
с отображением таблицы, правильно?Если это так, вы должны использовать LinearLayout
(с android:orientation="vertical"
. Затем убедитесь, что вы заказываете дочерние представления так, как вы хотите, чтобы они отображались; если вы хотите, чтобы кнопки отображались ниже ScrollView
, скопируйтеи вставьте LinearLayout
, который удерживает кнопки внизу файла. Он должен выглядеть примерно так:
<LinearLayout>
<ScrollView>
<!-- display the grid -->
</ScrollView>
<LinearLayout>
<!-- display the two buttons side by side -->
</LinearLayout>
</LinearLayout>
Вам придется избавиться от следующих атрибутов в вашем ScrollView
, еслив конечном итоге вы переключаетесь на LinearLayout
(поскольку они не поддерживаются классом): android:layout_alignParentTop="true"
и android:layout_above="@id/projectDetailsButtons"
.
Вам также следует опасаться атрибута android:layout_weight
. В общем,Вы хотите попытаться избежать использования вложенных весов, так как вычисление этих весов неэффективно и замедляет процесс рисования представлений на экране. Например, вам не нужен атрибут layout_weight="2"
для любой из кнопок, так как эта информацияявляется избыточным - при удалении обоих атрибутов веса по умолчанию веса будут равны «0», что должно иметь тот же эффект.
При этом, я не уверен, если makiЭти изменения решат вашу проблему, если я не увижу больше вашего кода, но это определенно шаг в правильном направлении.Если бы я угадал, в чем проблема, я бы сказал, что ваш Fragment
не может правильно раздувать макет в onCreateView()
, потому что ваш XML-файл завален вложенными макетами, которые на самом деле не отображают их представления.так, как вы хотите.Попробуйте внести некоторые изменения и скажите мне, как это происходит.