当前位置: 首页 > 知识库问答 >
问题:

scrollview中的viewpager匹配父级不起作用

尉迟明贤
2023-03-14

我正在尝试将视图寻呼机放在表格行中,并且我设置了视图寻呼机布局高度匹配父级。结果是视图寻呼机根本没有高度。我必须在dp中设置布局高度,以便视图寻呼机可以具有高度。但是我在视图寻呼机中膨胀的内容是动态的,因此我无法在xml内部设置高度。滚动视图已经填满了屏幕,但视图页码器根本没有任何高度。有没有办法解决这个问题?(有问题的视图寻呼机是具有 id pager_problem)

编辑:

好了,现在在我更改它之后,viewpager存在了,但是只有屏幕那么大,如果片段内容很长,我想使viewpager内的内容可滚动(所有布局可滚动,而不仅仅是view pager中的片段)

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <com.emilsjolander.components.StickyScrollViewItems.StickyScrollView
        android:layout_width="match_parent"
        android:fillViewport="true"
        android:layout_height="match_parent">
        <LinearLayout
            android:layout_width="match_parent"
            android:orientation="vertical"
            android:layout_height="wrap_content">
            <TableLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">
                <TableRow>
                    <android.support.v4.view.ViewPager
                        android:id="@+id/pager_image"
                        android:layout_width="0dp"
                        android:layout_weight="1"
                        android:layout_height="100dp" />
                </TableRow>
                <TableRow android:tag="sticky">
                    <LinearLayout
                        android:layout_width="0dp"
                        android:layout_weight="1"
                        android:layout_height="50dp"
                        android:id="@+id/tab"
                        android:tag="sticky"
                        android:layout_below="@id/pager_image"
                        android:orientation="horizontal">

                        <LinearLayout
                            android:id="@+id/frame_general_tab"
                            android:layout_width="0dp"
                            android:layout_height="match_parent"
                            android:layout_weight="1"
                            android:gravity="center">
                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:textSize="15dp"
                                android:text="GENERAL"/>
                        </LinearLayout>
                        <LinearLayout
                            android:id="@+id/frame_detail_tab"
                            android:layout_width="0dp"
                            android:layout_height="match_parent"
                            android:layout_weight="1"
                            android:gravity="center"
                            android:background="@color/gray_F2">
                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:textSize="15dp"
                                android:text="DETAIL"/>
                        </LinearLayout>

                        <LinearLayout
                            android:id="@+id/frame_foto_tab"
                            android:layout_width="0dp"
                            android:layout_height="match_parent"
                            android:layout_weight="1"
                            android:gravity="center"
                            android:background="@color/gray_F2">
                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:textSize="15dp"
                                android:text="FOTO"/>
                        </LinearLayout>
                    </LinearLayout>
                </TableRow>
                <TableRow>
                    <!--<LinearLayout android:id="@+id/page_container"
                        android:layout_width="0dp"
                        android:layout_weight="1"
                        android:orientation="vertical"
                        android:layout_marginBottom="70dp"
                        android:layout_height="match_parent">
                    </LinearLayout>-->
                    <android.support.v4.view.ViewPager
                        android:id="@+id/pager"
                        android:layout_width="0dp"
                        android:layout_weight="1"
                        android:layout_marginBottom="70dp"
                        android:layout_height="match_parent"/>

                </TableRow>
            </TableLayout>


        </LinearLayout>
    </com.emilsjolander.components.StickyScrollViewItems.StickyScrollView>

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_alignParentBottom="true"
        android:layout_height="wrap_content">

        <GridLayout
            android:layout_width="match_parent"
            android:layout_alignParentBottom="true"
            android:columnCount="2"
            android:background="@color/gray_F2"
            android:rowCount="3"
            android:orientation="vertical"

            android:layout_height="70dp">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="20dp"
                android:textSize="15dp"
                android:layout_gravity="right"
                android:textColor="@color/gray_72"
                android:text="Harga mulai"/>

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="25dp"
                android:textSize="20dp"
                android:layout_gravity="right"
                android:text="Rp 10.560.000"/>
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="20dp"
                android:textSize="15dp"
                android:layout_gravity="right"
                android:textColor="@color/gray_72"
                android:text="per kamar per malam"/>

            <Button android:layout_width="150dp"
                android:layout_marginLeft="20dp"
                android:layout_height="match_parent"
                android:layout_rowSpan="3"
                android:background="@color/traveloka_button_orange"
                android:textColor="@color/white"
                android:layout_margin="10dp"
                android:text="LIHAT KAMAR"/>

        </GridLayout>
    </RelativeLayout>
</RelativeLayout>

共有1个答案

戚修雅
2023-03-14

您需要将Android:fillViewport=“true”设置为滚动视图

android:fillViewport="true"
android:layout_width="match_parent"
android:layout_height="match_parent"
 类似资料:
  • 我有一个ViewPager和一个带有选项卡的ActionBar。其中一个选项卡有一个ListView,当我点击该ListView中的一个选项时,我添加了一个子片段,它是该行的详细视图。 该局部视图是一个滚动视图,内部有一个线性布局。滚动视图是,其中的线性布局是和。在手机大小的模拟器上,细节视图会根据需要填充屏幕,但在平板电脑上,细节视图只覆盖屏幕宽度的一部分。。。尽管ScrollView的宽度和L

  • 我有一个带有listview的片段,它的适配器包含两种类型的单元格(取决于位置)。 列表中的第一个单元格应该是自定义视图(按钮,ViewPager,CirclePageSignator),第一个单元格宽度match_parent 第二个单元格也是自定义视图,其中包含按钮和图像视图。 我的问题是,当我放置ViewPager时,在第一个单元格中看不到ViewPager。宽度以包装内容或填充父对象或匹配

  • 我需要创建一个像谷歌报摊这样的界面,它是一种折叠标题(垂直滚动)上的ViewPenger(水平滚动)。我的要求之一是使用在Google IO 2015上展示的新设计支持库。(http://android-developers.blogspot.ca/2015/05/android-design-support-library.html) 基于克里斯·贝恩斯(https://github.com/c

  • 我有一个xml布局,它有以下视图:滚动视图->Relationvelayout->Some views+Tablayout+ViewPager->RecylerView(在ViewPager的片段中)。ViewPager有一些固定的高度(保持它“wrap_content”根本不会显示它)。现在的问题是Recylerview永远不会滚动。我已经尝试了几个已经发布的解决方案,比如在“嵌套滚动视图”中包

  • 我有WebView,它正在使用JS加载超文本标记语言。从WebView我调用JS函数,它正在寻找超文本标记语言中的一些文本。在此函数中,我有将WebView滚动到下一个匹配文本的命令: 如果我将WebView放在ScrollView中(如下面的代码所示),WebView将不会滚动(即使命令< code>webView.scrollTo(x,y)也不会滚动)。但是如果我把它放在ScrollView之

  • 我有一个片段包含一个带有layout_width=“match_parent”的RecyclerView: RecyclerView中的项是CardView,也具有layout_width=“match_parent”: 我将项目视图膨胀如下: 但当我运行该应用程序时,CardView将呈现为wrap_content,如下所示: 请注意,这是在仿真器上运行的,而不是真正的设备。 是我做错了什么,还