在我的MenuContentActivity中,我将IntercomFragment称为如下:
IntercomFragment myContent= IntercomFragment.newInstance(index);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(android.R.id.content, myContent, "intercomFrag").commit();
然后在我的IntercomFragment中,我尝试给布局“内部通信”充气,但它失败了!它抛出“java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mycompany.myapp/com.mycompany.myapp.MenuContentActivity}: android.content.res.Resources$NotFoundException: Resource ID #0x7f030030
”
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View mainView = inflater.inflate(R.layout.intercom, container, false);
......
......
......
}
inflater.inflate
失败。 R.layout.intercom
exsits, intercom.xml 已在布局目录中。
我可以用同样的方式调用和显示我的其他片段,但我不明白为什么我不能以相同的方式调用和显示IntercomFragment。
什么是这个错误,任何想法?
答案 0 :(得分:0)
我意识到我的应用程序在landspace
模式下没有崩溃,然后我怀疑是intercom
布局本身。
布局包含<include layout=""......\>
我意识到其中一个包含的布局只有landspace
文件(在layout-land文件夹中)。所以我想因为加载布局文件时它无法找到所包含布局的portrait
版本,所以它失败了。
我刚刚添加了缺少的布局文件,现在就解决了!