这是我的布局,我在ScrollView中添加了Tablayout和ViewPager。
EveryThing没问题,但是viewPager片段没有显示任何内容。
这是我的xml布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:id="@+id/toolBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:background="@color/colorPrimary">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/toolTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:textAppearanceLarge"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:text="Exemplo"
android:layout_marginLeft="12dp"
android:layout_marginStart="12dp"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/back_arrow"
android:layout_toEndOf="@+id/back_arrow" />
<ImageView
android:paddingTop="2dp"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:src="@drawable/back_arrow"
android:id="@+id/back_arrow" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
<ScrollView
android:layout_below="@id/toolBar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/restau_image"
android:layout_width="match_parent"
android:layout_height="210dp"
android:scaleType="centerCrop"
tools:src="@drawable/catina2" />
<LinearLayout
android:id="@+id/linear_clock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/restau_image"
android:layout_marginLeft="16dp"
android:orientation="vertical">
<ImageView
android:id="@+id/clock"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_marginBottom="8dp"
android:layout_marginTop="16dp"
tools:src="@drawable/clock" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:orientation="horizontal">
<TextView
android:id="@+id/almoco_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="8dp"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
android:textStyle="bold"
tools:text="Almoço" />
<TextView
android:id="@+id/almoco_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
tools:text="11:30 - 14:30" />
<ImageView
android:id="@+id/arrow_down"
android:layout_width="28dp"
android:layout_height="28dp"
android:layout_marginLeft="12dp"
tools:src="@drawable/arow_down" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp">
<TextView
android:id="@+id/jantar_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
android:textStyle="bold"
tools:text="Jantar" />
<TextView
android:id="@+id/jantar_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
tools:text="18:30 - 20:30" />
</LinearLayout>
<TextView
android:id="@+id/open_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginTop="4dp"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
tools:text="Aberto de segunda à sexta Fechado aos feriados" />
</LinearLayout>
<View
android:id="@+id/first_line"
android:layout_width="320dp"
android:layout_height="2dp"
android:layout_below="@id/linear_clock"
android:layout_centerHorizontal="true"
android:layout_marginTop="8dp"
android:background="#BDBDBD">
</View>
<LinearLayout
android:id="@+id/linear_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/first_line"
android:layout_marginLeft="16dp"
android:orientation="vertical">
<ImageView
android:id="@+id/info"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_marginBottom="8dp"
android:layout_marginTop="16dp"
tools:src="@drawable/info" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:orientation="horizontal">
<TextView
android:id="@+id/pp_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
tools:text="Prato principal" />
<TextView
android:id="@+id/pp_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="18dp"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
android:textStyle="bold"
tools:text="3€" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:orientation="horizontal">
<TextView
android:id="@+id/mp_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
tools:text="Mini Prato" />
<TextView
android:id="@+id/mp_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="52dp"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="@android:color/black"
android:textSize="18sp"
android:textStyle="bold"
tools:text="2.5€" />
</LinearLayout>
</LinearLayout>
<View
android:id="@+id/second_line"
android:layout_width="320dp"
android:layout_height="2dp"
android:layout_below="@id/linear_info"
android:layout_centerHorizontal="true"
android:layout_marginTop="8dp"
android:background="#BDBDBD">
</View>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/second_line"
android:orientation="vertical">
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/tabs" />
</LinearLayout>
</RelativeLayout>
</ScrollView>
</RelativeLayout>
正如你所看到的,我已经尝试过android:fillViewport =&#34; true&#34;,但它不起作用...... P.s Im对于长代码抱歉,我真的需要尽可能快的解决方案...这似乎工作的唯一方法是在ViewPager中添加一些高度
答案 0 :(得分:0)
尝试替换此代码
<ScrollView
android:layout_below="@id/toolBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
给予scrollview wrap_content
也可以在ViewPager xml中添加这些行并解决问题
Read here你有同样的问题!
android:layout_marginBottom="?attr/actionBarSize"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
答案 1 :(得分:0)
您的布局内容超出了ScrollView的viewPort(屏幕高度)。因此,在这种类型的布局结构中,您只能为ViewPager
设置固定高度。然后,只有您可以查看您的ViewPager内容。请尝试以下ViewPager
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_below="@id/tabs" />