在与setContentView(R.layout.mylayoutid)一起使用之前,有什么方法可以检查某个布局ID是否存在?
类似的东西:
if(layout_exists("mylayoutid"))
setContentView(R.layout.mylayoutid);
else
setContentView(R.layout.defaultlayout);
在开发者文档中找不到任何内容。
谢谢!
答案 0 :(得分:6)
是的,有。
int layoutId = getContext().getResources().getIdentifier("mylayoutid","layout", getContext().getPackageName());
if (layoutId == 0){
// this layout doesn't exist
} else {
setContentView(layoutId);
}
答案 1 :(得分:0)
因为它是R.java
文件中的静态整数,所以如果它不存在,则无法编译您的应用。