Quiero el contenido dentro de scrollView como centro.
<ScrollView
android:id="@+id/scroller"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="12dp"
android:paddingBottom="20dp"
android:scrollbarStyle="outsideOverlay"
android:layout_gravity="center" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="check"
android:gravity="center_vertical|center_horizontal"/>
</ScrollView>
Nota: no hay ningún android:gravity
atributo para scrollvew.
cualquier sol: -
android
scrollview
Padma Kumar
fuente
fuente
android:windowSoftInputMode="stateHidden|adjustResize"
pero, no te desplaces, ayúdame por favorRelativeLayout
como vista raíz. Puede serFrameLayout
yandroid:layout_gravity="center_vertical"
paraScrollView
¿Qué tal esto?
fuente
Creo que una solución más elegante sería el uso de la
ScrollView
'sandroid:fillViewport
propiedad. AScrollView
es un poco diferente en la forma en que trata su vista de contenido (solo puede tener una), incluso si establecematch_parent
(fill_parent
) enScrollView
, no le dará tanto espacio a su vista de contenido, sino que el comportamiento predeterminado esScrollView
que el contenido independientemente de lo que especifique para esa vista. Lo queandroid:fillViewport
hace es decirleScrollView
que estire su contenido para llenar la ventana gráfica ( http://developer.android.com/reference/android/widget/ScrollView.html#attr_android:fillViewport ). Entonces, en este caso,LinearLayout
se estirará para que coincida con la ventana y si la altura va detrás de la ventana, entonces se podrá desplazar, ¡que es exactamente lo que desea!La respuesta aceptada no funcionará correctamente cuando el contenido se extienda más allá de
ScrollView
porque todavía centrará la vista de contenido primero, lo que hará que corte una parte de la vista, y elScrollView
centrado en otro diseño funciona pero simplemente no se siente bien, además Creo que también resultará en un error de pelusa (padre inútil o algo por el estilo).Intente algo como esto:
Sólo recuerde que la razón por la que se centra aquí ahora es debido a la
android:gravity
sobre elLinearLayout
puesto que laScrollView
va a estirar elLinearLayout
fin de mantener esto en mente, dependiendo de lo que se agrega a la disposición.Otra buena lectura sobre
ScrollView
aunque no sobre centrado sino sobrefillViewport
es http://www.curious-creature.org/2010/08/15/scrollviews-handy-trick/fuente
Utilice este atributo en ScrollView
Ejemplo
fuente
Para @Patrick_Boss, lo que impidió que el contenido se cortara en mi aplicación fue cambiar la gravedad y layout_gravity a center_horizontal para LinearLayout.
Funcionó para mí ... pero no estoy seguro si funcionará para usted.
Modificación de la respuesta de @ Ghost -
fuente
Una cosa a considerar es qué NO establecer . Asegúrese de que los controles secundarios, especialmente los
EditText
controles, no tengan laRequestFocus
propiedad establecida.Esta puede ser una de las últimas propiedades interpretadas en el diseño y anulará la configuración de gravedad en sus padres (
layout
oScrollView
).fuente
usando la vista de desplazamiento dentro de ConstraintLayout. Me ha funcionado
La altura de la vista de desplazamiento debe ser wrap_content
fuente