android.util.AndroidRuntimeException: requestFeature() must be called before adding content

AndroidRuntime(419): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dream/com.dream.activity.YunXingChengXuActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content

public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.tab_choice);
      requestWindowFeature(Window.FEATURE_NO_TITLE);
}
 
其中: setContentView(R.layout.tab_choice);
     requestWindowFeature(Window.FEATURE_NO_TITLE);
两行顺序换一下就可以了。
改后:
public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     requestWindowFeature(Window.FEATURE_NO_TITLE);
            setContentView(R.layout.tab_choice);
}

android java的执行顺序有关!目前遇到的这个问题就是因为在系统运行开始的时候就已经调用父类的构造方法,接着调用setContentView方法展示视图界面。R.layout.main是R.java资源类中的一个属性。当你在调用这个方法之后在声明Widget就会报:android.util.AndroidRuntimeException: requestFeature() must be called before adding content

所以前面的那三句中加载Activity的样式的那句代码一定要写在中间。

原文地址:https://www.cnblogs.com/LuckStarShine/p/2641934.html