logcat中的错误:E/FragmentManager(7158): No view found for id 0x7f05000d (com.mybiz.mygame:id/fragment_container) for fragment MainMenuFragment{4052d780 #0 id=0x7f05000d}
好的,这里是应用程序的设置方式:
创建了两个变量:
private static View oGoogleGamesView ;
private static RelativeLayout oViewGroup ;
然后在onCreate:
oViewGroup = new RelativeLayout ( this ) ;
setContentView ( oViewGroup ) ;
LayoutInflater inflater = (LayoutInflater)this.getSystemService ( Context.LAYOUT_INFLATER_SERVICE ) ;
oGoogleGamesView = inflater.inflate ( R.layout.ggmain, oViewGroup, false ) ;
然后我尝试显示片段:
// create fragments
mMainMenuFragment = new MainMenuFragment();
// listen to fragment events
mMainMenuFragment.setListener(this);
// add initial fragment (welcome fragment)
getSupportFragmentManager().beginTransaction().add(R.id.fragment_container,
mMainMenuFragment).commit();
在这里它崩溃了顶部的错误。这是xml文件:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragment_container"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</FrameLayout>
如何在不崩溃的情况下显示片段?
答案 0 :(得分:1)
试试这个 在onCreate方法中 的setContentView(R.layout.yourLayout); 其中yourLayout是包含你在问题中提出的frameLayout的xml文件。
答案 1 :(得分:1)
您将应用视图设置为oViewGroup:
setContentView ( oViewGroup ) ;
然后你膨胀另一个视图并让它悬空:
oGoogleGamesView = inflater.inflate ( R.layout.ggmain, oViewGroup, false ) ;
要在您的应用中实际使用oGoogleGamesView
作为布局,您必须将其添加到当前视图中,然后才能引用其中包含的ID:
oViewGroup.addView(oGoogleGamesView, LayoutParams);