我的应用程序结构是我有一个菜单,左侧有 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 上进行测试时,白屏出现的时间更长。
如何优化我的片段?谢谢