1

私のアプリの構造は、左側に5つのメニューポイントがあり、右側にコンテンツがあるメニューがあるということです。

MainActivity.xml

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >

    <fragment
    android:id="@+id/fragmentMenu"
    android:name="com.example.FragmentMenu"
    android:layout_width="@dimen/MenuWidth"
    android:layout_height="match_parent" />

    <LinearLayout
    android:id="@+id/content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android_layout_toRightOf="@+id/fragmentMenu"
    android:orientation="vertical"/>

</RelativeLayout>

MainActivity.java

public class FragmentActivityMain extends FragmentActivity {
    @Override
    protected void onCreate(final Bundle arg0) {
        super.onCreate(arg0);
        setContentView(R.layout.fragment_activity_main);

        FragmentManager fm = getSupportFragmentManager();
        FragmentMenu fragmentMenu = (FragmentMenu) fm.findFragmentById(R.id.fragmentMenu);
        fragmentMenu.init();
    }
}

確かに FragmenMenu クラスがあり、

public class FragmentMenu extends ListFragment {

    @Override
    public View onCreateView(final LayoutInflater inflater, final ViewGroup container,    final Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_menu, container, false);
        return view;
    }

    public init() {
         FragmentManager fm = getFragmentManager();
         FragmentTransaction ft = fm.beginTransaction(); 
         FragmentNowListView lw = new FragmentCarListView();
         ft.add(R.id.content, lw);
         ft.commit();
    }

}

FragmentCarList は単純なリストであり、現在は静的テスト データがあり、リスト内の項目は 5 つだけです

私の問題:遅い。携帯電話 (Galaxy S3) でアプリをテストしたところ、アプリの起動時に約 0.5 秒の白い画面が表示され、これがログです。

  • 10-29 11:43:44.093: D/dalvikvm(29710): GC_CONCURRENT は 267K を解放し、5% は 13903K/14535K を解放し、10ms+2ms を一時停止しました
  • 10-29 11:43:44.133: D/dalvikvm(29710): GC_FOR_ALLOC は 215K を解放し、6% は 13896K/14663K を解放し、12ms 一時停止しました
  • 10-29 11:43:44.233: D/dalvikvm(29710): GC_FOR_ALLOC は 262K を解放し、13901K/14663K を 6% 解放し、12ms 一時停止しました
  • 10-29 11:43:44.258: D/dalvikvm(29710): GC_FOR_ALLOC は 212K を解放し、6% は 13897K/14663K を解放し、13ms 一時停止しました
  • 10-29 11:43:44.278: D/dalvikvm(29710): GC_FOR_ALLOC は 208K を解放し、6% は 13897K/14663K を解放し、12ms 一時停止しました
  • 10-29 11:43:44.328: D/dalvikvm(29710): GC_FOR_ALLOC は 131K を解放し、4% は 14098K/14663K を解放し、12ms 一時停止しました
  • 10-29 11:43:44.398: D/dalvikvm(29710): GC_CONCURRENT は 20K を解放し、3% は 14559K/14919K を解放し、1ms+4ms を一時停止しました

また、Xperia Rayでテストしたところ、白い画面が長く表示されました。

フラグメントを最適化するにはどうすればよいですか? どうも

4

0 に答える 0