Android scrollview hiding top content in layout

24,689

Solution 1

Found it ! It's the android:layout_gravity="center" in the LinearLayout that is the culprit. Just delete this and everything should be fine.

Solution 2

Have you tried setting

android:fillViewport="true"

in the ScrollView?

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:fillViewport="true"
  android:background="@color/title_color_dark_transparent" >

Solution 3

You can scroll programmatically.

  1. Remove android:layout_gravity property from xml
  2. Add scrolling to onResume function

Some code from my project:

protected void onResume() {
    super.onResume();
    final HorizontalScrollView svInMenu = (HorizontalScrollView) findViewById(R.id.svInMenu);
    ViewTreeObserver vto = svInMenu.getViewTreeObserver();
    vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
        public void onGlobalLayout() {
            svInMenu.scrollTo(svInMenu.getRight() / 4, 0);
        }
    });
}
Share:
24,689
Edmund Rojas
Author by

Edmund Rojas

Updated on July 09, 2022

Comments

  • Edmund Rojas
    Edmund Rojas almost 2 years

    Im having a problem where the android scrollview starts hiding a pair of textviews I have at the top of my layout, I have found another person on this very site who had that problem and was able to get help unfortunately the person who helped them didnt actually say what fixes it, can anyone tell me what was the fix here?

    android scrollview hiding top content

    any help would be huge here is my xml code:

    <?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/title_color_dark_transparent" >
    
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center_vertical|center_horizontal|center"
        android:orientation="vertical" >
    
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="center"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="5dp"
            android:orientation="vertical"
            android:paddingTop="5dp" >
    
            <TextView
                android:id="@+id/saysomething"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/loading"
                android:textColor="#FFFFFF"
                android:textSize="30dp" />
    
            <TextView
                android:id="@+id/saysomethinginfo"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="5dp"
                android:text="@string/loading"
                android:textColor="#FFFFFF"
                android:textSize="17dp" />
    
            <EditText
                android:id="@+id/tweetedittext"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/edit_text"
                android:gravity="top"
                android:hint="@string/edittext_hint"
                android:inputType="textCapSentences|textMultiLine|textAutoCorrect|textAutoComplete"
                android:lines="3"
                android:textAppearance="@style/TextAppearance.EditText"
                android:textSize="17dp" />
    
            <RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="5dp"
                android:layout_marginTop="5dp"
                android:orientation="horizontal" >
    
                <Button
                    android:id="@+id/photobutton"
                    style="@style/TextAppearance.Button"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/button_background"
                    android:onClick="photobuttonClicked"
                    android:text="@string/photobuttontext"
                    android:textSize="15dp" />
    
                <TextView
                    android:id="@+id/charactersremaining"
                    android:layout_width="wrap_content"
                    android:layout_height="fill_parent"
                    android:layout_centerInParent="true"
                    android:layout_toLeftOf="@+id/posttweetbutton"
                    android:text="@string/characters"
                    android:textColor="#FFFFFF"
                    android:textSize="20dp" />
    
                <Button
                    android:id="@id/posttweetbutton"
                    style="@style/TextAppearance.Button"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_marginLeft="2dp"
                    android:background="@drawable/button_background"
                    android:onClick="posttweetbuttonClicked"
                    android:text="@string/postbuttonstext"
                    android:textSize="15dp" />
            </RelativeLayout>
        </LinearLayout>
    
        <TextView
            android:id="@+id/photodetails"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            android:textColor="#FFFFFF"
            android:textSize="17dp"
            android:layout_marginTop="8dp"
            android:layout_marginLeft="8dp" />
    
        <ImageView
            android:id="@+id/iv_pic"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp" />
    </LinearLayout>
    
    </ScrollView>