为什么LinearLauout布局中TabLayout和ViewPager之间存在一段空白
时间: 2024-02-24 12:54:38 浏览: 68
Android中在DialogFragment内使用TabLayout+ViewPager
5星 · 资源好评率100%
在LinearLayout布局中,当TabLayout和ViewPager的高度都设置为"match_parent"时,它们会平分父布局的高度,导致它们之间存在一段空白。这是因为TabLayout和ViewPager在布局中是相邻的两个子控件,它们的高度都设置为"match_parent"时,会将父布局的高度平分。
为了解决这个问题,可以在TabLayout和ViewPager的布局文件中,将它们的高度都设置为"wrap_content",然后再将它们都放在一个垂直方向的LinearLayout中,这样它们就可以按照自己的内容高度来确定自己的高度,从而避免了它们之间的空白。例如:
```
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<com.google.android.material.tabs.TabLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabGravity="fill"
app:tabMode="fixed" />
<androidx.viewpager.widget.ViewPager
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
```
阅读全文