在滚动android时ScrollView落后太多了

时间:2017-10-04 08:14:16

标签: android xml scrollview

我在Linearlayout中使用scrollview,问题是布局响应正常,一旦我开始滚动,它就会落后太多。

< LinearLayout > 
< ScrollView >
< Linearlayout >..sub (LinearLayout)..< /LinearLayout >
< ScrollView>
< LinearLayout> 



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    android:background="@drawable/round_edittext"
    >

            <ScrollView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/pddd"
                >


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

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

            <TextView
                android:id="@+id/profile_user_email_id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:clickable="true"
                android:textAlignment="center"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="#000"
                android:textSize="25sp"
                android:textStyle="bold"

                />


            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Complete Your profile"
                android:textAlignment="center"
                android:textColor="#000"
                android:textSize="25sp"
                android:textStyle="bold" />


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

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Name   :"
                    android:textColor="#000"
                    android:textSize="20sp"
                    android:textStyle="bold" />

                <EditText
                    android:id="@+id/profileActivity_student_id"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10sp"
                    android:background="@drawable/round_edittext"
                    android:inputType="textCapSentences"
                    android:textColor="#000"
                    android:textSize="25sp"
                    android:textStyle="bold"

                    />
            </LinearLayout>

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

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Mobile : "
                    android:textColor="#000"
                    android:textSize="20sp"
                    android:textStyle="bold" />


                <EditText
                    android:id="@+id/profileActivity_student_mobile_id"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="5sp"
                    android:background="@drawable/round_edittext"
                    android:inputType="number"
                    android:maxLength="10"
                    android:textColor="#000"
                    android:textSize="25sp"
                    android:textStyle="bold"

                    />
            </LinearLayout>


            <RadioButton
                android:id="@+id/profile_faculty_radio_id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="20sp"
                android:layout_marginTop="20sp"
                android:text="Faculty"
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold" />


            <RadioButton
                android:id="@+id/profile_parents_radio_id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="20sp"
                android:layout_marginTop="10sp"
                android:text="Parents"
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold"

                />


            <LinearLayout
                android:id="@+id/layout_faculty_key_profile"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10sp"
                android:orientation="horizontal"
                android:visibility="visible"
                android:weightSum="6">

                <TextView
                    android:layout_width="0sp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="Key :"
                    android:textColor="#000"
                    android:textSize="20sp"
                    android:textStyle="bold"

                    />

                <EditText
                    android:id="@+id/pff_key"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10sp"
                    android:layout_weight="3"
                    android:background="@drawable/round_edittext"
                    android:inputType="text|textNoSuggestions"
                    android:textColor="#000"
                    android:textSize="30sp"
                    android:textStyle="bold" />

                <ImageView
                    android:id="@+id/faculty_verify_bt_id"
                    android:layout_width="0sp"
                    android:layout_height="50sp"
                    android:layout_weight="1"
                    android:background="@drawable/check"
                    android:textColor="#000"
                    android:textStyle="bold"

                    />

                <ImageView
                    android:id="@+id/faculty_cancle_bt_id"
                    android:layout_width="0sp"
                    android:layout_height="50sp"
                    android:layout_weight="1"
                    android:background="@drawable/minus1"
                    android:textColor="#000"
                    android:textStyle="bold" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:id="@+id/proile_activity_unique_key_linearlayout_id"

                >

                <TextView
                    android:layout_width="0sp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="Key :"
                    android:textColor="#000"
                    android:textSize="20sp"
                    android:textStyle="bold"

                    />

                <EditText
                    android:id="@+id/profile_activity_school_key"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10sp"
                    android:layout_weight="3"
                    android:background="@drawable/round_edittext"
                    android:inputType="text|textNoSuggestions"
                    android:textColor="#000"
                    android:textSize="30sp"
                    android:textStyle="bold"


                    />

                <ImageView
                    android:id="@+id/profile_activity_school_key_verify_bt_id"
                    android:layout_width="0sp"
                    android:layout_height="50sp"
                    android:layout_weight="1"
                    android:background="@drawable/check"
                    android:textColor="#000"
                    android:textStyle="bold"

                    />

                <ImageView
                    android:id="@+id/profile_activity_school_key_cancle_bt_id"
                    android:layout_width="0sp"
                    android:layout_height="50sp"
                    android:layout_weight="1"
                    android:background="@drawable/minus1"
                    android:textColor="#000"
                    android:textStyle="bold" />

            </LinearLayout>


            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                    android:layout_marginTop="20sp"
                    android:orientation="horizontal"

                >


                <Spinner
                    android:id="@+id/activityprofile_spinner_id"
                    android:layout_width="200sp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="50sp"
                    >
                </Spinner>


            </LinearLayout>


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

                <Button
                    android:id="@+id/profile_saveinfo_id"
                    android:layout_width="100sp"
                    android:layout_height="50sp"
                    android:layout_gravity="center_horizontal"
                    android:background="@drawable/save2" />

                <Button
                    android:id="@+id/profile_nagivate_id"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_horizontal"
                    android:text="Navigate" />
            </LinearLayout>

        </LinearLayout>
    </LinearLayout>
   </ScrollView>
</LinearLayout>

我已将此代码用于我的Linearlayout,只要我触摸radioButton或edittext或者我向下滚动,它就会开始滞后。我无法理解这个问题,我使用的图像尺寸小于100kb

1 个答案:

答案 0 :(得分:0)

我编辑了你的代码并取出了大约4个LinearLayout这些是不必要的。请测试它的性能。如果它仍然很慢,请尝试使用LinearLayout替换一些剩余的垂直RelativeLayout s作为@IshitaShinha建议。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/round_edittext"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/pddd"
        android:orientation="vertical">

        <TextView
            android:id="@+id/profile_user_email_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:clickable="true"
            android:textAlignment="center"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="#000"
            android:textSize="25sp"
            android:textStyle="bold" />

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Complete Your profile"
            android:textAlignment="center"
            android:textColor="#000"
            android:textSize="25sp"
            android:textStyle="bold" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Name   :"
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold" />

            <EditText
                android:id="@+id/profileActivity_student_id"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10sp"
                android:background="@drawable/round_edittext"
                android:inputType="textCapSentences"
                android:textColor="#000"
                android:textSize="25sp"
                android:textStyle="bold" />
        </LinearLayout>

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Mobile : "
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold" />


            <EditText
                android:id="@+id/profileActivity_student_mobile_id"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="5sp"
                android:background="@drawable/round_edittext"
                android:inputType="number"
                android:maxLength="10"
                android:textColor="#000"
                android:textSize="25sp"
                android:textStyle="bold" />
        </LinearLayout>

        <RadioButton
            android:id="@+id/profile_faculty_radio_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20sp"
            android:layout_marginTop="20sp"
            android:text="Faculty"
            android:textColor="#000"
            android:textSize="20sp"
            android:textStyle="bold" />

        <RadioButton
            android:id="@+id/profile_parents_radio_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20sp"
            android:layout_marginTop="10sp"
            android:text="Parents"
            android:textColor="#000"
            android:textSize="20sp"
            android:textStyle="bold" />


        <LinearLayout
            android:id="@+id/layout_faculty_key_profile"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10sp"
            android:orientation="horizontal"
            android:visibility="visible"
            android:weightSum="6">

            <TextView
                android:layout_width="0sp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Key :"
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold" />

            <EditText
                android:id="@+id/pff_key"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10sp"
                android:layout_weight="3"
                android:background="@drawable/round_edittext"
                android:inputType="text|textNoSuggestions"
                android:textColor="#000"
                android:textSize="30sp"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/faculty_verify_bt_id"
                android:layout_width="0sp"
                android:layout_height="50sp"
                android:layout_weight="1"
                android:background="@drawable/check"
                android:textColor="#000"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/faculty_cancle_bt_id"
                android:layout_width="0sp"
                android:layout_height="50sp"
                android:layout_weight="1"
                android:background="@drawable/minus1"
                android:textColor="#000"
                android:textStyle="bold" />
        </LinearLayout>

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

            <TextView
                android:layout_width="0sp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Key :"
                android:textColor="#000"
                android:textSize="20sp"
                android:textStyle="bold" />

            <EditText
                android:id="@+id/profile_activity_school_key"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10sp"
                android:layout_weight="3"
                android:background="@drawable/round_edittext"
                android:inputType="text|textNoSuggestions"
                android:textColor="#000"
                android:textSize="30sp"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/profile_activity_school_key_verify_bt_id"
                android:layout_width="0sp"
                android:layout_height="50sp"
                android:layout_weight="1"
                android:background="@drawable/check"
                android:textColor="#000"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/profile_activity_school_key_cancle_bt_id"
                android:layout_width="0sp"
                android:layout_height="50sp"
                android:layout_weight="1"
                android:background="@drawable/minus1"
                android:textColor="#000"
                android:textStyle="bold" />
        </LinearLayout>

        <Spinner
            android:id="@+id/activityprofile_spinner_id"
            android:layout_width="200sp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="50sp"
            android:layout_marginTop="20sp" />

        <Button
            android:id="@+id/profile_saveinfo_id"
            android:layout_width="100sp"
            android:layout_height="50sp"
            android:layout_gravity="center_horizontal"
            android:background="@drawable/save2" />

        <Button
            android:id="@+id/profile_nagivate_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:text="Navigate" />
    </LinearLayout>
</ScrollView>