Problema: ScrollView oculta la parte superior de su vista secundaria cuando crece más allá de cierta altura.ScrollView no muestra la parte superior
He siguiente distribución definido en XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/commandPanel"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:paddingLeft="5dip"
android:paddingRight="5dip" >
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="OK" />
<Button
android:id="@+id/button2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Back" />
</LinearLayout>
<RelativeLayout
android:id="@+id/mainContentPanel"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/commandPanel"
android:background="@android:color/white" >
<ScrollView
android:id="@+id/formScrollView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_marginTop="5dip"
android:layout_weight="1"
android:background="@android:color/darker_gray"
android:fillViewport="false"
android:paddingBottom="5dip"
android:scrollbarStyle="insideOverlay" >
<LinearLayout
android:id="@+id/formContentLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_marginTop="20dip"
android:background="@android:color/black"
android:gravity="center_horizontal|top"
android:orientation="vertical"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:paddingTop="20dip" >
<LinearLayout
android:id="@+id/tr"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:orientation="horizontal" >
<TextView
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="sample title" />
<TextView
android:id="@+id/value"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="sample value ......." />
</LinearLayout>
</LinearLayout>
</ScrollView>
</RelativeLayout>
</RelativeLayout>
---------- ------ código
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.scrollview);
updateUi();
}
//add few more rows here
void updateUi() {
LinearLayout sampletr = (LinearLayout) findViewById(R.id.tr);
LinearLayout contentPane = (LinearLayout) findViewById(R.id.formContentLayout);
TextView title = (TextView) findViewById(R.id.title);
TextView value = (TextView) findViewById(R.id.value);
for (int i = 0; i < 25; i++) {
LinearLayout tr = new LinearLayout(this);
TextView t = new TextView(this);
t.setText("Sample title : " + i);
TextView v = new TextView(this);
v.setText("Sample value : " + i);
tr.addView(t, title.getLayoutParams());
tr.addView(v, value.getLayoutParams());
contentPane.addView(tr, sampletr.getLayoutParams());
}
}
Aquí filas superiores en LinearLayout (ScrollView de inmediato niño) comienza a desaparecer de la parte superior si no. de filas crece más de 15! Además, ni siquiera puedo desplazarme hacia arriba manualmente para verlos. Cualquier puntero, por favor, ¿qué hay de malo en este diseño?
¿Podría ser que establezca paddingBottom en ScrolView? intente y elimínelo, vea lo que sucede. –
@eric - no hace ninguna diferencia. – iuq