膨胀视图在片段中的onCreateView中花费太多时间

时间:2018-10-04 11:53:05

标签: android android-fragments layout include

我在Fragment中使用了Navigation Drawer。 在Drawer中,还有7个更多的选项菜单,所有其他功能正常。 仅此片段需要3秒的时间才能显示视图。

我发现使用调试模式,仅在这行下面花费了很多时间来执行。

final View view=inflater.inflate(R.layout.fragment_vehicle_inspection,container,false);

此外,我在XML部分中使用了4个include布局。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/lat_inspection_vendor_name_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/margin_05dp"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/txt_inspection_vendor_name"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:drawableEnd="@drawable/ic_action_edit"
            android:gravity="center"
            android:maxLines="1"
            android:textColor="@color/colorAccent"
            android:textSize="@dimen/margin_15sp"
            android:textStyle="bold" />
    </LinearLayout>

    <include
        android:id="@+id/include_inspection_function_layout"
        layout="@layout/fragment_inspection_function_layout_card"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lat_inspection_vendor_name_layout"
        android:layout_marginTop="@dimen/margin_05dp"
        android:visibility="gone" />

    <ScrollView
        android:id="@+id/scroll_inspection"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/include_inspection_function_layout"
        android:layout_marginTop="@dimen/margin_10dp"
        android:focusableInTouchMode="true"
        android:focusable="true">

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

            <include layout="@layout/fragment_inspection_vendor_details_card" />

            <LinearLayout
                android:id="@+id/lat_inspection_form"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:visibility="gone">

                <include layout="@layout/fragment_inspection_vehicle_form_row_card" />

                <include layout="@layout/fragment_inspection_vehicle_features_row_card" />

                <include layout="@layout/fragment_inspection_vehicle_form_penalty_row_card" />
            </LinearLayout>
        </LinearLayout>
    </ScrollView>
</RelativeLayout>

我希望包含部分不会影响充气视图。

我在包含布局中使用了26- EditText,26-checkbox和30-TextViews。 我担心的是,仅花费时间就增加太多视图。

请协助我解决此问题。 预先感谢。

2 个答案:

答案 0 :(得分:0)

这是因为布局文件中的视图过多,并且其中包含部分内容会影响您的通胀过程。尝试减少视图数量。 分享您的布局设计图,以便我给您一个建议。

答案 1 :(得分:0)

这是因为您正在显示一些高分辨率图像或任何其他背景资源,所以可能需要花费一些时间才能在片段中绘制视图

相关问题