我有一个带有水平排列按钮的LinearLayout 的活动,一个带有水平方向TextViews 的LinearLayout,一个gridview 和一个TextView。第一个 LinearLayout 有 3 个按钮,其中一个最初的可见性设置为“GONE”。LinearLayout 的权重必须是最初的 2/28,但是当第三个按钮出现时,它会完全重塑。我还提到,当我在更大的屏幕上进行测试时,比例保持不变,并且一切正常。使用的drawable是一个带有圆角和笔划的简单形状。
<!-- this button is initially set as GONE and then it changes his height -->
<Button
android:id="@+id/previous"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="end"
android:gravity="center"
android:background="@drawable/button"
android:layout_marginRight="10dp"
android:text="@string/previous"
android:textColor="#606060"
android:textStyle="bold"
android:textSize="20sp"
android:hint="Previous"/>
<!-- This button is visible from the very beginning, with the correct height -->
<Button
android:id="@+id/next"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="end"
android:gravity="center"
android:background="@drawable/button"
android:text="@string/next"
android:textColor="#606060"
android:textStyle="bold"
android:textSize="20sp"
android:hint="Next"/>
</LinearLayout>
我提到我以编程方式设置了可见性,它具有任何相关性:
_previous.setVisibility(GONE);
和分别
_previous.setVisibility(VISIBLE);
知道为什么会发生这种情况,我该如何解决?