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 是一个简单的列表,现在带有静态测试数据,一个 List 中只有五个项目

我的问题:慢。我在我的手机(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,6% 释放 13901K/14663K,暂停 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