首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android-L的新的嵌套滚动API是什么?

Android-L的新的嵌套滚动API是什么?
EN

Stack Overflow用户
提问于 2014-08-05 18:23:53
回答 2查看 25.5K关注 0票数 21
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-22 06:31:05

他们没有引起人们对这个伟大的新功能的太多关注。我一直在玩弄它,我想我已经弄明白了。你所要做的就是设置

android:nestedScrollingEnabled="true"

在嵌套的(子)可滚动视图中,假设你有一个在另一个里面。这会导致子视图滚动到完成,然后允许其父视图使用滚动的其余部分。我发现我更喜欢相反的行为-父级获得滚动优先级,然后子级跟随-所以我重写了ScrollView中的onNestedScroll方法,如下所示:

代码语言:javascript
复制
@Override
public void onNestedScroll(View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed) {
    //swap dyConsumed and dyUnconsumed
    super.onNestedScroll(target, dxConsumed, dyUnconsumed, dxUnconsumed, dyConsumed);
}

您应该为外部(父) ScrollView使用这个新的ScrollView子类。

票数 34
EN

Stack Overflow用户

发布于 2018-04-24 01:35:29

代码语言:javascript
复制
***Intento, hacer dos gridviews móviles(horizontal y verticalmente), dentro de un scrollview mas grande, pero al fijar el objetivo en los gridviews, solo me deja moverlos horizontalmente.***





<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    <ScrollView 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:orientation="vertical"
tools:context=".MainActivity"
    android:id="@+id/scv">
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:orientation="vertical"
    android:id="@+id/tt">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingTop="10dp"
        android:gravity="center">


        <EditText
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:backgroundTint="#50000000"
            android:textColor="#000000"
            android:inputType="number"
            android:id="@+id/NumeroPresupuesto"
            android:hint="Nº  presupuesto"
            android:textColorHint="#000000"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:backgroundTint="#50000000"
            android:textColor="#F6D405"
            android:id="@+id/FechaPresupuesto"
            android:text="FECHA"/>


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <TextView
                android:layout_width="200dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="Importe Total:"/>
            <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="#30000000"
                android:textColor="#F6D405"
                android:enabled="false"
                android:gravity="center"
                android:layout_marginLeft="5dp"
                android:id="@+id/borrar_firma"
                android:text="0,00€"/>


        </LinearLayout>


    </LinearLayout>


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:id="@+id/ln">



        <HorizontalScrollView
            android:id="@+id/hsv"
            android:layout_width="fill_parent"
            android:layout_height="300dp"
            android:layout_weight="0"
            android:fillViewport="true"
            android:measureAllChildren="false"
            android:scrollbars="none" >
            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="300dp"
                android:gravity="center_vertical"
                android:orientation="horizontal" >


                <GridView
                    android:id="@+id/Rejilla"
                    android:layout_width="1000dp"
                    android:layout_height="match_parent"
                    android:background="#10000000"
                    android:gravity="center"
                    android:horizontalSpacing="0dp"
                    android:columnWidth="100dp"
                    android:numColumns="6"
                    android:stretchMode="columnWidth"
                    android:verticalSpacing="1dp">

                </GridView>
            </LinearLayout>
        </HorizontalScrollView>
    </LinearLayout>



    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical"
        android:id="@+id/ln1">

        <View
            android:layout_marginTop="10dp"
            android:paddingTop="20dp"
            android:layout_height="2dp"
            android:layout_width="fill_parent"
            android:background="#000000" />
        <TextView
            android:layout_marginTop="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Tarifa de Colaborador"/>

        <HorizontalScrollView
            android:id="@+id/hsv1"
            android:layout_width="fill_parent"
            android:layout_height="300dp"
            android:layout_weight="0"
            android:fillViewport="true" >
            <ScrollView
                android:layout_width="fill_parent"
                android:layout_height="300dp"
                android:nestedScrollingEnabled="true">
            <LinearLayout
                android:id="@+id/innerLay1"
                android:layout_width="wrap_content"
                android:layout_height="300dp"
                android:gravity="center_vertical"
                android:orientation="horizontal" >


                <GridView
                    android:id="@+id/Rejilla1"
                    android:layout_width="1000dp"
                    android:layout_height="match_parent"
                    android:background="#10000000"
                    android:gravity="center"
                    android:horizontalSpacing="0dp"
                    android:columnWidth="100dp"
                    android:numColumns="6"
                    android:stretchMode="columnWidth"
                    android:verticalSpacing="1dp"

                </GridView>
            </LinearLayout>
            </ScrollView>
        </HorizontalScrollView>

        <View
            android:layout_marginTop="10dp"
            android:paddingTop="20dp"
            android:layout_height="2dp"
            android:layout_width="fill_parent"
            android:background="#000000" />


    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingTop="5pt">



        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:paddingTop="20dp"
            android:gravity="center">

            <EditText
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:backgroundTint="#50000000"
                android:textColor="#FFFFFF"
                android:inputType="number"
                android:id="@+id/Codigo"
                android:hint="Unidad"
                android:textColorHint="#000000"/>

            <EditText
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:backgroundTint="#50000000"
                android:textColor="#FFFFFF"
                android:inputType="number"
                android:id="@+id/Unidad"
                android:hint="Código"
                android:textColorHint="#000000"/>


        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:paddingTop="20dp"
            android:gravity="center">


            <EditText
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:backgroundTint="#50000000"
                android:textColor="#FFFFFF"
                android:inputType="number"
                android:id="@+id/Medicion"
                android:hint="Medicion"
                android:textColorHint="#000000"/>

            <EditText
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:backgroundTint="#50000000"
                android:textColor="#FFFFFF"
                android:inputType="number"
                android:id="@+id/PrecioPresupuestos"
                android:hint="Precio"
                android:textColorHint="#000000"/>


        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:paddingTop="20dp"
            android:gravity="center">

            <EditText
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:backgroundTint="#50000000"
                android:textColor="#FFFFFF"
                android:inputType="number"
                android:id="@+id/Importe"
                android:hint="Importe"
                android:textColorHint="#000000"/>

            <Spinner
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content"
                android:id="@+id/CajaIVA">
            </Spinner>


        </LinearLayout>

    </LinearLayout>
    <View
        android:layout_marginTop="10dp"
        android:paddingTop="20dp"
        android:layout_height="2dp"
        android:layout_width="fill_parent"
        android:background="#000000" />
    <EditText
        android:layout_marginTop="10dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textMultiLine"
        android:lines="5"
        android:scrollHorizontally="false"
        android:scrollbars="vertical"
        android:gravity="top|left"
        tools:textColor="#FFFFFF"
        android:hint="Descripción"
        android:backgroundTint="#88000000"
        android:id="@+id/editText2" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingTop="20dp"
        android:gravity="center">


        <Button
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:backgroundTint="#000000"
            android:textColor="#F6D405"
            android:id="@+id/NuevoRegistro"
            android:alpha="0.4"

            android:text="Nuevo Registro"/>
        />
        <Button
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:backgroundTint="#000000"
            android:textColor="#F6D405"
            android:id="@+id/EliminarRegistro"
            android:alpha="0.4"
            android:text="Eliminar Registro"/>
        <Button
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:backgroundTint="#000000"
            android:textColor="#F6D405"
            android:id="@+id/GrabarRegistro"
            android:alpha="0.4"
            android:text="Grabar Registro"/>
    </LinearLayout>

</LinearLayout>


</ScrollView>
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25136481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档