发布于 2014-08-22 06:31:05
他们没有引起人们对这个伟大的新功能的太多关注。我一直在玩弄它,我想我已经弄明白了。你所要做的就是设置
android:nestedScrollingEnabled="true"
在嵌套的(子)可滚动视图中,假设你有一个在另一个里面。这会导致子视图滚动到完成,然后允许其父视图使用滚动的其余部分。我发现我更喜欢相反的行为-父级获得滚动优先级,然后子级跟随-所以我重写了ScrollView中的onNestedScroll
方法,如下所示:
@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子类。
发布于 2018-04-24 01:35:29
***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>
https://stackoverflow.com/questions/25136481
复制相似问题